diff --git a/services/print_server/app_server/wx_login.go b/services/print_server/app_server/wx_login.go index f4163b4..97b3b6e 100644 --- a/services/print_server/app_server/wx_login.go +++ b/services/print_server/app_server/wx_login.go @@ -162,7 +162,12 @@ func (u *UserLogin) MobileLogin(ctx *gin.Context, param *wxLogin.MobileLogin) (* func (u *UserLogin) GetUserPhoneNum(param *wxLogin.WeChatPhoneNumberParam) (string, bool, error) { phone, err := api.WeixinMiniAPI.SNSGetUserPhone(param.Code) if err != nil { - return "", false, err + if strings.Contains(err.Error(), "access_token expired") || strings.Contains(err.Error(), "42001") { + api.WeixinMiniAPI.CBSetToken("") + u.GetUserPhoneNum(param) + } else { + return "", false, err + } } // 检查用户是否存在 users, err := dao.GetUsers(globals.GetDB(), "", "", phone, "")