package middleware import ( "surveyService/response" "surveyService/util/constants" "github.com/gin-gonic/gin" "gogs.uu.mdfitnesscao.com/cuiguohai/sdk" ) // 拦截用户端的机构ID func AuthorizeMemberOmitempty() gin.HandlerFunc { return func(c *gin.Context) { mechanismId := c.Request.Header.Get("mechanismId") c.Set(constants.MemberMechanismIDKey, mechanismId) // 如果有第三方的拦截逻辑,跳过该部分 surveyToken := c.Request.Header.Get("surveyToken") if surveyToken == "" { token := c.Request.Header.Get("token") if token != "" { // 拿到用户系统的资料 currentUser, err := getMemberTokenInfo[*sdk.AuthMember](token) if err != nil { response.Fail(c, err) return } c.Set(constants.MemberCacheKey, currentUser) } } c.Next() } }