checkSession成功但后端解密失败报code已失效?
发布于 5 年前 作者 guiying70 13909 次浏览 来自 问答

我的登录流程是

onload的时候先login一次拿到code存下来

用户getPhoneNumber的时候checkSession

如果成功 直接用存下来的code去后端换取解密的手机号

如果失败 说明sessionKey过期 重新wx.login 拿新的code去后端换取解密的手机号

经测试 发起两次登录,两次的code一样 说明checkSession成功了 但是后端报code失效

在部分用户上稳定复现 其余用户正常

怎么都想不通T_T

2 回复

在wx.login后拿到code发给后端,不存本地(有效期5分钟左右),后端拿到该用户的session_key。

授权手机号的时候。checksession是否失效。没失效使用iv和encryptedData就可以解密了,如果失效,重新login一次。再使用iv和encryptedData解密

code重复消费,有啥想不通的。code作为缓存的key,第二次进来,如果code一样,去取缓存别消费code就行了。

回到顶部