微信小程序 获取用户手机号,第一次总会解密失败,第二次就好了,当我退出,再次登录后,又解密失败,刷新后再次登录又可以登录了,请问这是什么原因呢?
wx.login({
success(res) {
if (res.code) {
//发起网络请求
wx.request({
url: ''
method: 'GET' ,
}).then(resx => {
if (resx) {
wx.request({
url: '' ,
data: {
encryptedData: encryptedData,
iv: iv,
sessionKey: resx.data.session_key,
},
method: 'GET' ,
}).then(res => {
console.log(res, '获取用户手机号码' );
})
}
})
}
}
});
|
//服务端代码:这里调用微信提供的node.js的代码示例解密
getPhoneNumber : async (req, res) => {
let appId = '' ;
let sessionKey = req.query.sessionKey;
let encryptedData = req.query.encryptedData;
let iv = req.query.iv;
let pc = new WXBizDataCrypt(appId, sessionKey);
let data = pc.decryptData(encryptedData, iv);
return await data;
},
|