gin定义一个全局的中间件,需要了解的是定义中间件的语法,并且在定义完中间件之后还需要区注册中间件。注册使用的是r.use()。
而且在中间件中使用.set方法可以在后面注册的路由中使用.get来获取。
// 定义中间
func MiddleWare() gin.HandlerFunc {
return func(c *gin.Context) {
t := time.Now()
fmt.Println("中间件开始执行了")
// 设置变量到Context的key中,可以通过Get()取
c.Set("request", "中间件")
status := c.Writer.Status()
fmt.Println("中间件执行完毕", status)
t2 := time.Since(t)
fmt.Println("time:", t2)
}
}
func main() {
// 1.创建路由
// 默认使用了2个中间件Logger(), Recovery()
r := gin.Default()
// 注册中间件
r.