中间件

基本定义

gin里面本身就有中间件,脚手架里对中间件做了简单的封装

接口定义

type Fairing interface {
    OnRequest(*gin.Context) error
    OnResponse(result interface{}) (interface{}, error)
}

OnRequest: 执行控制器方法前,修改如头信息、判断参数等等

OnResponse:执行控制器方法后。可以修改返回值内容

创建全局中间件

type TokenCheck struct {}
func NewTokenCheck() *TokenCheck {
   return &TokenCheck{}
}
func(this *TokenCheck) OnRequest(ctx *gin.Context) error{
      return nil
}
func(this *TokenCheck) OnResponse(result interface{}) (interface{}, error){
   return result,nil  
}

注意点:两个方法必须都有返回值。

注册全局中间件

注册路由中间件

最后更新于

这有帮助吗?