1、定義中間件
func middle(c *gin.Context) { fmt.Println("我是中間件") c.Next() }
2、對要攔截的路由進行分組並引入中間件
r.GET("/ping", func(c *gin.Context) {
c.JSON(200, gin.H{
"message": "pong",
})
})
api := r.Group("/api")
{
api.Use(middle)
api.GET("/ping", func(c *gin.Context) {
c.JSON(200, gin.H{
"message": "api pong",
})
})
}
3、測試
分別查看http://127.0.0.1:8088/api/ping和http://127.0.0.1:8088/ping,可以看出一個會輸出“我是中間件”,一個不會輸出
4、結論
什么權限、登陸、token之類的就這樣起飛吧
