Gin 中间件的代码示范

21 min read

以下是一个使用 Gin 中间件的示例代码:

package main

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

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

    // 添加中间件
    r.Use(MyCustomMiddleware())

    r.GET("/", func(c *gin.Context) {
        // 你的处理代码
        c.JSON(200, gin.H{
            "message": "Hello World!",
        })
    })

    r.Run() // 运行服务器
}

// 自定义中间件
func MyCustomMiddleware() gin.HandlerFunc {
    return func(c *gin.Context) {
        // 中间件处理代码
        c.Next()
    }
}

在上面的示例中,我们创建了一个名为 MyCustomMiddleware 的自定义中间件函数,并将其添加到 Gin 路由器的全局中间件中。

中间件函数接受一个 gin.HandlerFunc 参数,返回一个带有 gin.Context 参数的函数。中间件的处理代码在函数体内,并通过调用 c.Next() 来传递控制权到接下来的处理函数。

在路由 GET / 的处理函数中,我们可以看到返回一个 JSON 响应。

当请求发送到服务器时,MyCustomMiddleware 中间件的处理代码将会先执行,然后再执行处理函数。