gin框架—中间件
应用场景
中间件适合处理一些公共的业务逻辑,比如登录认证、权限校验、数据分页、记录日志、耗时统计。
中间件的使用
使用中间件必须是一个 func(c *gin.Context)类型的函数,底层实现了handeFunc方法
中间件分类
全局中间件
1、定义一个函数接收一个*gin.Context类型的参数,和handler的写法是一样的:
1 | func MyMiddleware(c *gin.Context){ |
2、定义一个返回值为HandlerFunc类型的函数
1 | func MyMiddleware(){ |
路由组中间件
1 | ... |
路由中间件
1 | router.GET("/login", LoginMiddleware, handler) |
Abort和Next
c.Next():先执行后续的中间件,最后再继续执行本函数
c.Abort():确保不调用此请求后续中间件,之前和当前中间件不受应用,如鉴权失败不再继续调用。
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.