希望得到帮助。
场景,本地微信授权获取用户头像信息,真机同个微信账号授权第一次会解密失败,需要第二次再code
是不是哪里业务错了还是
,希望得到帮助
//绑定微信 bindGetUserInfo: function (e,callback) { var that= this ; var id=wx.getStorageSync( 'id' ) var loginsalt=wx.getStorageSync( 'loginsalt' ) if (!id || !loginsalt){ /*wx.reLaunch({ url: '/pages/login/login' }) return;*/ } if ( typeof callback !== 'function' ) { callback = function callback() {}; } if (e.detail.userInfo) { wx.showLoading({ title: '加载中' , mask: true }) wx.login({ success: function success(data) { wx.getSetting({ success: res => { if (res.authSetting[ 'scope.userInfo' ]) { wx.getUserInfo({ success: function success(res) { wx.request({ url: that.data.url+ 'wechat/wxapp_userinfo' , data: { id:id, loginsalt:loginsalt, code: data.code, encryptedData: res.encryptedData, iv: res.iv }, success(res) { //解密失败 -41003 //工具微信授权用户信息后,真机再同个微信授权用户信息第一次就解密失败 wx.hideLoading(); if (res.data.ret==1){ callback(res.data); } else { wx.showToast({ title: res.data.msg, icon: 'none' , duration: 3000 }) } },fail(){ wx.hideLoading(); wx.showToast({ title: '网络异常' , icon: 'none' , duration: 3000 }) } }) } }); } else { //wx.redirectTo({ url: '/pages/users/getuinfo/getuinfo' }); } } }) } }); } } |
你好,你可以参照这个逻辑进行获取,相关接口说明已经在文档中很详细了。我没有遇到过楼主的错误,但我用这个不会报错。如果还是有错误可能时逻辑的原因了,可以考虑一下异步造成的错误
嗯嗯
你倒是把代码发上来,我们才能帮你看哪里错了啊
感谢,我贴上面了代码你帮我看看啊,谢谢
http://es6.ruanyifeng.com/#docs/promise
推荐你看下promise的语法,学习下es6,callback的写法不利于阅读
好的,谢谢。
看了下,整体业务流水没错误。先login拿到code,再获取用户信息的encryptedData和iv,同时发到后台。后台先解密code,然后在换取session成功后再去解密用户信息。这么紧凑的时序我没试过,可以测试下加个延时,看看是不是微信那边没刷新
好的,谢谢。
希望得到帮助
希望得到帮助啊
希望得到帮助啊
你看看是不是我这种情况类似
https://developers.weixin.qq.com/community/develop/article/doc/0002a67c098b885bd1287f6c156013
不是的,每次都是新请求code
解密失败后端报的什么错?