UpdateUserByMiniInfo中更新头像或手机号
This commit is contained in:
@@ -68,7 +68,6 @@ func (a *MiniAuther) DecryptData(authInfo *auth2.AuthInfo, jsCode, encryptedData
|
|||||||
}
|
}
|
||||||
sessionKey = authInfo.AuthBindInfo.UserData.(string)
|
sessionKey = authInfo.AuthBindInfo.UserData.(string)
|
||||||
}
|
}
|
||||||
globals.SugarLogger.Debugf("weixin mini DecryptData2 jsCode:%s, encryptedData:%s, iv:%s, sessionKey:%s", jsCode, encryptedData, iv, sessionKey)
|
|
||||||
decryptedData, err := ProxySNSDecodeMiniProgramData(encryptedData, sessionKey, iv)
|
decryptedData, err := ProxySNSDecodeMiniProgramData(encryptedData, sessionKey, iv)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return "", err
|
return "", err
|
||||||
@@ -94,6 +93,7 @@ func ProxySNSCode2Session(jsCode string) (sessionInfo *weixinapi.SessionInfo, er
|
|||||||
}
|
}
|
||||||
|
|
||||||
func ProxySNSDecodeMiniProgramData(encryptedData, sessionKey, iv string) (decryptedData []byte, err error) {
|
func ProxySNSDecodeMiniProgramData(encryptedData, sessionKey, iv string) (decryptedData []byte, err error) {
|
||||||
|
globals.SugarLogger.Debugf("ProxySNSDecodeMiniProgramData, encryptedData:%s, sessionKey:%s, iv:%s", encryptedData, sessionKey, iv)
|
||||||
decryptedData, err = api.WeixinMiniAPI.SNSDecodeMiniProgramData(encryptedData, sessionKey, iv)
|
decryptedData, err = api.WeixinMiniAPI.SNSDecodeMiniProgramData(encryptedData, sessionKey, iv)
|
||||||
return decryptedData, err
|
return decryptedData, err
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -393,12 +393,17 @@ func (c *Auth2Controller) UpdateUserByMiniInfo() {
|
|||||||
if err == nil {
|
if err == nil {
|
||||||
decryptedDataBase64, err2 := weixin.AutherObjMini.DecryptData(authInfo, GetComposedCode(&c.Controller, params.JsCode), params.Data, params.Iv)
|
decryptedDataBase64, err2 := weixin.AutherObjMini.DecryptData(authInfo, GetComposedCode(&c.Controller, params.JsCode), params.Data, params.Iv)
|
||||||
if err = err2; err == nil {
|
if err = err2; err == nil {
|
||||||
retVal = decryptedDataBase64
|
|
||||||
var userInfo *weixinapi.MiniUserInfo
|
var userInfo *weixinapi.MiniUserInfo
|
||||||
if err = utils.UnmarshalUseNumber([]byte(decryptedDataBase64), &userInfo); err == nil {
|
if err = utils.UnmarshalUseNumber([]byte(decryptedDataBase64), &userInfo); err == nil {
|
||||||
|
retVal = userInfo
|
||||||
if user := params.Ctx.GetFullUser(); user != nil {
|
if user := params.Ctx.GetFullUser(); user != nil {
|
||||||
|
if userInfo.AvatarURL != "" {
|
||||||
user.Avatar = userInfo.AvatarURL
|
user.Avatar = userInfo.AvatarURL
|
||||||
dao.UpdateEntity(dao.GetDB(), user, "Avatar")
|
}
|
||||||
|
if userInfo.PurePhoneNumber != "" {
|
||||||
|
user.Mobile = utils.String2Pointer(userInfo.PurePhoneNumber)
|
||||||
|
}
|
||||||
|
dao.UpdateEntity(dao.GetDB(), user)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user