Gin的中间件和路由分组
什么是分组
对router创建Group(就是分组), 对同一分组会拥有同一前缀和同一中间件
写法
eg:
r := gin.Default()
v1 := r.Group("/v1")
v1.POST("/login",loginEndpoint)
v1.POST("/submit",submitEndpoint)
v1.POST("/read",readEndpoint)
测试分组
package main
import (
"fmt"
"github.com/gin-gonic/gin"
)
func main() {
r := gin.Default()
v1 := r.Group("v1")
v1.GET("test", func(c *gin.Context) {
fmt.Println("我在分组方法内部")
c.JSON(200, gin.H{
"success": true,
})
})
r.Run(":8080")
}

什么是中间件
在请求到达路由的方法的前和后进行的一系列操作 (方法)
如何使用中间件
在路由器(路由组)上进行use操作 后面传入中间件函数即可

点进去 Use 方法看一下

接收的参数是 middleware 是一个 HandleFunc 类型的

HandleFunc 在gin中是这样的
下面我们创建一个中间件:



下面是中间件的执行顺序 (洋葱中间件)===>(有点像AOP中的动态代理?)

中间件的两种使用,一种在Use里面,传多个,第二是链式调用
吾尝终日而思矣,不如须臾之所学也。吾尝跂而望矣,不如登高之博见也。……君子生非异也,善假于物也。

浙公网安备 33010602011771号