Erstellen Sie Webanwendungen mit Golangs Web-Framework Gin-gonic

王林
Freigeben: 2023-06-24 11:23:02
Original
1466 Leute haben es durchsucht

Gin-gonic ist ein leichtes, leistungsstarkes Web-Framework, das in der Go-Sprache geschrieben ist, RESTful API unterstützt und einfach zu erweitern ist. In diesem Artikel werden die grundlegende Verwendung von Gin-Gonic, Routing-Einstellungen, die Verwendung von Middleware, das Rendern von Vorlagen usw. vorgestellt.

1. Grundlegende Verwendung

Zuerst müssen wir Gin-gonic installieren. Sie können den folgenden Befehl verwenden, um es zu installieren:

go get -u github.com/gin-gonic/gin
Nach dem Login kopieren

Nachdem die Installation abgeschlossen ist, führen Sie Gin-gonic in die Go-Sprache ein:

import "github.com/gin-gonic/gin"
Nach dem Login kopieren

The Es folgt eine einfache Gingonic-Webanwendung:

package main

import "github.com/gin-gonic/gin"

func main() {
    router := gin.Default()

    router.GET("/", func(c *gin.Context) {
        c.JSON(200, gin.H{
            "message": "Hello, world!",
        })
    })

    router.Run(":8080")
}
Nach dem Login kopieren

Der obige Code erstellt einen Standard-Gin-Gonic-Router, lauscht auf den lokalen Port 8080 und gibt eine „Hallo, Welt!“-Nachricht im JSON-Format zurück, wenn der Benutzer darauf zugreift.

2. Routing-Einstellungen

Nachdem Sie den Router gemäß den oben genannten Schritten erstellt haben, können Sie den Router verwenden, um das Routing der Anwendung festzulegen. Gin-Gonic Router unterstützt die folgenden HTTP-Methoden: GET, POST, PUT, PATCH, DELETE, OPTIONS und HEAD. Schauen wir uns an, wie eine Route erstellt wird:

func main() {
    router := gin.Default()

    // 定义GET请求路由
    router.GET("/hello", func(c *gin.Context) {
        c.JSON(200, gin.H{
            "message": "Hello, world!",
        })
    })

    // 定义POST请求路由
    router.POST("/login", func(c *gin.Context) {
        // 获取表单中的username和password
        username := c.PostForm("username")
        password := c.PostForm("password")

        c.JSON(200, gin.H{
            "username": username,
            "password": password,
        })
    })

    router.Run(":8080")
}
Nach dem Login kopieren

Der obige Code definiert zwei Routen, eine ist die GET-Anforderungsroute/Hallo und die andere ist die POST-Anforderungsroute/Login. Wenn der Benutzer auf die Route/Hallo zugreift, Es wird eine Nachricht im JSON-Format zurückgegeben: „Hallo Welt!“. Wenn der Benutzer auf Routing/Anmeldung zugreift, werden die vom Benutzer übermittelten Formulardaten zurückgegeben.

3. Middleware

Gin-Gonic-Middleware ist eine Funktion, die zur Verarbeitung zwischen Anfragen und Antworten verwendet werden kann. Zu den gängigen Middlewares gehören Protokollierung, Authentifizierung, Wiederherstellung usw. Wir können die Middleware des integrierten http-Pakets von Golang oder die Standard-Middleware in Gin-gonic verwenden. Hier ist eine grundlegende Protokollierungs-Middleware:

func main() {
    router := gin.Default()

    // 记录中间件
    router.Use(func(c *gin.Context) {
        // 请求之前

        // 记录请求时间
        start := time.Now()

        // 请求处理
        c.Next()

        // 请求之后
        latency := time.Since(start)
        log.Print(latency)
    })

    router.GET("/", func(c *gin.Context) {
        c.JSON(200, gin.H{
            "message": "Hello, world!",
        })
    })

    router.Run(":8080")
}
Nach dem Login kopieren

Der obige Code definiert eine Protokollierungs-Middleware, die die Anforderungsverarbeitungszeit vor und nach jeder Anforderung aufzeichnet.

4. Template-Rendering

Template ist eine gängige Technologie in der Webentwicklung, die es uns ermöglicht, Webanwendungen mithilfe von Front-End-Technologien wie HTML/JavaScript/CSS zu erstellen. Gin-gonic unterstützt das Rendern von Vorlagen über das integrierte HTML-Paket. Wir können Vorlagen verwenden, um dynamische Seiten zu rendern. Hier ist ein einfaches Beispiel für das Rendern einer Vorlage:

func main() {
    router := gin.Default()

    // 模板设置
    router.LoadHTMLGlob("templates/*.html")

    router.GET("/", func(c *gin.Context) {
        c.HTML(200, "index.html", gin.H{
            "title": "Gin-gonic",
        })
    })

    router.Run(":8080")
}
Nach dem Login kopieren

Der obige Code definiert ein einfaches Beispiel für das Rendern einer Vorlage. In diesem Beispiel erstellen wir eine GET-Anfrage für die Root-Route mit dem Gin-Standardrouter. Vorlagendateien sollten im Vorlagenverzeichnis gespeichert werden. In diesem Beispiel haben wir gerade eine index.html-Datei in Form eines H1-Tags mit dem Titel „Gin-gonic“ gerendert.

Zusammenfassend lässt sich sagen, dass Gin-gonic ein sehr leistungsstarkes Web-Framework ist, das einfach zu verwenden und zu erweitern ist und Funktionen wie RESTful API und Template-Rendering unterstützt. Mit Golangs Develop Gin-gonic-Anwendung können wir ganz einfach Webanwendungen erstellen.

Das obige ist der detaillierte Inhalt vonErstellen Sie Webanwendungen mit Golangs Web-Framework Gin-gonic. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage