package middleware import ( "surveyService/response" "surveyService/service/survey_token" "surveyService/util/constants" "surveyService/validators" "github.com/gin-gonic/gin" ) func AuthorizeSurveyToken() gin.HandlerFunc { return func(c *gin.Context) { token := c.Request.Header.Get("surveyToken") if token == "" { c.Set(constants.SurveyTokenCacheKey, "") c.Set(constants.SurveyTokenDataCacheKey, nil) c.Next() return } var currentUser *validators.SurveyToken var err *response.ErrCode // 拿到用户系统的资料 currentUser, err = survey_token.GetSurveyTokenData(token) if err != nil { response.Fail(c, err) return } c.Set(constants.SurveyTokenCacheKey, token) c.Set(constants.SurveyTokenDataCacheKey, currentUser) c.Next() } }