Maison > développement back-end > Golang > Créez des applications Web à l'aide du framework Web de Golang, Gin-gonic

Créez des applications Web à l'aide du framework Web de Golang, Gin-gonic

王林
Libérer: 2023-06-24 11:23:02
original
1498 Les gens l'ont consulté

Gin-gonic est un framework Web léger et performant écrit en langage Go, prend en charge l'API RESTful et est facile à étendre. Cet article présentera l'utilisation de base de Gin-gonic, les paramètres de routage, l'utilisation du middleware, le rendu des modèles, etc.

1. Utilisation de base

Tout d'abord, nous devons installer Gin-gonic, qui peut être installé à l'aide de la commande suivante :

go get -u github.com/gin-gonic/gin
Copier après la connexion

Une fois l'installation terminée, Gin-gonic est introduit en langage Go :

import "github.com/gin-gonic/gin"
Copier après la connexion

Ce qui suit est une simple application Web Gin-gonic :

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")
}
Copier après la connexion

Le code ci-dessus crée un Routeur Gin-gonic par défaut, écoutez le port local 8080 et renvoyez un message "Bonjour tout le monde !" au format JSON lorsque l'utilisateur y accède.

2. Paramètres de routage

Après avoir suivi les étapes ci-dessus pour créer un routeur, vous pouvez utiliser le routeur pour définir le routage de l'application. Gin-gonic Router prend en charge les méthodes HTTP suivantes : GET, POST, PUT, PATCH, DELETE, OPTIONS et HEAD. Voyons comment créer une route :

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")
}
Copier après la connexion

Le code ci-dessus définit deux routes, l'une est la route/bonjour de la requête GET et l'autre est la route/connexion de la requête POST lorsque l'utilisateur. accède à la route/hello, renvoie un message "Hello, world!" au format JSON Lorsque l'utilisateur accède au routage/connexion, les données du formulaire soumises par l'utilisateur seront renvoyées.

3. Middleware

Le middleware Gin-gonic est une fonction qui peut être utilisée pour traiter entre les requêtes et les réponses. Les middlewares courants incluent la journalisation, l'authentification, la récupération, etc. Nous pouvons utiliser le middleware du package http intégré de Golang ou le middleware par défaut de Gin-gonic. Ce qui suit est un middleware d'enregistrement de base :

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")
}
Copier après la connexion

Le code ci-dessus définit un middleware d'enregistrement qui enregistre le temps de traitement de la demande avant et après chaque demande.

4. Rendu de modèle

Le modèle est une technologie courante dans le développement Web, qui nous permet de créer des applications Web à l'aide de technologies frontales telles que HTML/JavaScript/CSS. Gin-gonic prend en charge le rendu des modèles via le htmpackage intégré. Nous pouvons utiliser des modèles pour rendre des pages dynamiques. Ce qui suit est un exemple de rendu de modèle de base :

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")
}
Copier après la connexion

Le code ci-dessus définit un exemple de rendu de modèle simple. Dans cet exemple, nous créons une requête GET pour la route racine en utilisant le routeur par défaut de Gin. Les fichiers modèles doivent être stockés dans le répertoire des modèles. Dans cet exemple, nous venons de restituer un fichier index.html, sous la forme d'une balise H1 avec un titre "Gin-gonic".

Pour résumer, Gin-gonic est un framework Web très puissant, facile à utiliser et à étendre, prenant en charge des fonctions telles que l'API RESTful et le rendu de modèles. Nous pouvons facilement créer des applications Web à l'aide de l'application Develop Gin-gonic de Golang.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal