小程序
小游戏
企业微信
微信支付
扫描小程序码分享
用户授权之后,获取到encryptedData、iv等值,进行解密有时会出现空值(大多数时候正常的,很少时候会遇到),希望能检测定位下是否有这个问题
2 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
我这边并没有刷新登录态,解密时结果为空是很少遇到,大多数是没有问题的。逻辑是这样的:用户点击button授权之后,调用wx.login获取到code,把code,iv,encryptedData等值传到后台,code换取sessionKey执行解密,很少时候解密出来是空的(我在小程序端解密也是偶尔会遇到解密为空,要用到unionId才这样做的),求解,谢谢
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
看逻辑咯 如果获取加密数据 再wx.login--->code---->sessionKey 这种几率很大解密失败
在回调中调用 wx.login 登录,可能会刷新登录态。此时服务器使用 code 换取的 sessionKey 不是加密时使用的 sessionKey,导致解密失败。建议开发者提前进行 login;或者在回调中先使用 checkSession 进行登录态检查,避免 login 刷新登录态。
wx.login
login
checkSession
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
我这边并没有刷新登录态,解密时结果为空是很少遇到,大多数是没有问题的。逻辑是这样的:用户点击button授权之后,调用wx.login获取到code,把code,iv,encryptedData等值传到后台,code换取sessionKey执行解密,很少时候解密出来是空的(我在小程序端解密也是偶尔会遇到解密为空,要用到unionId才这样做的),求解,谢谢
看逻辑咯 如果获取加密数据 再wx.login--->code---->sessionKey 这种几率很大解密失败
注意
在回调中调用
wx.login
登录,可能会刷新登录态。此时服务器使用 code 换取的 sessionKey 不是加密时使用的 sessionKey,导致解密失败。建议开发者提前进行login
;或者在回调中先使用checkSession
进行登录态检查,避免login
刷新登录态。