接口定义
type Fairing interface {
OnRequest(*gin.Context) error
OnResponse(result interface{}) (interface{}, error)
}
OnRequest: 执行控制器方法前,修改如头信息、判断参数等等
OnResponse:执行控制器方法后。可以修改返回值内容
创建全局中间件
其实就是一个Struct 如
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
}
注意点:两个方法必须都有返回值。