loginJustWithPhone: function (e) {
//判断是否确认授权
if (e.detail.errMsg == "getPhoneNumber:ok") {
//获取手机号
let phone = getPhoneNum(e.detail);
} else {
console.log('已取消授权');
}
},function __setOpenidAndSessionKey(fun) {
wx.login({
success: res => {
// res.code 微信临时登录凭证
//发送 res.code 到微信后台换取 openId, sessionKey
wx.request({
url: app.globalData.serverurl + 'xcx/getUserSO2.action?code=' + res.code,
success: res => {
res = res.data;
if (res.status == 1) {
let codejson = JSON.parse(res.object);
let openid = codejson.openid;
let sessionKey = codejson.session_key;
wx.setStorage({
key: 'openid',
data: openid,
});
wx.setStorage({
key: 'sessionKey',
data: sessionKey,
});
fun();
}
}
});
}
});
}
export function getPhoneNum(rawdetail) {
__setOpenidAndSessionKey(function (rawdetail) {
let WXBizDataCrypt = require('../js/WXBizDataCrypt.js');
let sessionKey = wx.getStorageSync('sessionKey');
//第一个参数为appid
let pc = new WXBizDataCrypt(appID, sessionKey);
// console.log(pc);
// let data = pc.decryptData(rawdetail.encryptedData, rawdetail.iv);
// return data.phoneNumber;
// console.log(data);
// //
// console.log(data.phoneNumber);
});
getPhoneNum()中传入的rawdetail传不进__setOpenidAndSessionKey中去。