Go Gin web框架的路由原理及中间件原理
warning:
这篇文章距离上次修改已过193天,其中的内容可能已经有所变动。
package main
import (
"fmt"
"github.com/gin-gonic/gin"
"net/http"
)
// 简单的Gin中间件示例
func simpleMiddleware(c *gin.Context) {
fmt.Println("中间件:请求进入")
// 执行其他任务,例如参数校验或权限检查
// ...
// 继续链式调用后续处理器或路由
c.Next() // 执行下一个中间件或路由处理器
// 在链式调用之后可以执行额外的任务
// 例如记录响应日志、写入响应头等
// ...
fmt.Println("中间件:请求结束")
}
func main() {
router := gin.Default() // 创建一个带有默认中间件的Gin路由器
// 添加自定义中间件到路由器
router.Use(simpleMiddleware)
// 定义一个简单的GET路由
router.GET("/", func(c *gin.Context) {
c.String(http.StatusOK, "Hello, World!")
})
// 启动服务器
router.Run(":8080")
}
这段代码创建了一个简单的Gin Web服务器,定义了一个中间件,并将其添加到路由器中。当服务器接收到GET请求到根路径时,它会触发中间件,然后执行相应的处理函数,最后返回“Hello, World!”字符串。
评论已关闭