为何解析手机号有概率失败
发布于 4 年前 作者 jinming 6895 次浏览 来自 官方Issues
// 解密用户手机号
             WxMaPhoneNumberInfo  phoneNoInfo = new WxMaPhoneNumberInfo();
            if (StringUtils.isNotBlank(login2.getEncryptedData1()) && StringUtils.isNotBlank(login2.getIv1())){
                phoneNoInfo = wxService.getUserService().getPhoneNoInfo(sessionKey, login2.getEncryptedData1(), login2.getIv1());
            }

为什么我在Java后端使用手机号的加密信息进行解析时会报解析错误?这时sessionkey并没有过期。

1 回复

需要研究下sessionkey机制,看在你们的项目中会不会存在这样一种情况:有多个地方使用到了wx.login(这个方法有它自己的机制会刷新sessionkey),那么就存在在授权的时候用的是sessionKeyA生成的加密串,在解密使因为其他地方调用了wx.login 变成了sessionKeyB。这是就会出现机密失败的情况。

回到顶部