首先得先获取session_key,不知道怎么获取可以看我之前的博文
wxml:
<button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber">
获取手机号
</button>
js:
//获取用户手机号
getPhoneNumber (e) {
if(e.detail.errMsg=='getPhoneNumber:ok'){
let self=this;
wx.showLoading({
title: '加载中',
mask:true
})
let data={
sessionkey:app.globalData.session_key,//先前获取到的session_key
iv: e.detail.iv,
encryptedData: e.detail.encryptedData//加密数据
};
//这里我们已经拿到encryptedData加密数据,接下来就发送到后台进行AES解密
wx.request({
url: app.globalData.requestUrl+'/wx/get_phoneNumber ', //改成你自己的url
data,
header: {
"Content-Type": "application/x-www-form-urlencoded"
},
method:'POST',
success (res) {
wx.hideLoading()
console.log(res.data)
//预计解密后json 结构
/*{
"phoneNumber": 用户绑定的手机号(国外手机号会有区号),
"purePhoneNumber": 没有区号的手机号,
"countryCode": 区号,
"watermark":
{
"appid": APPID,
"timestamp": TIMESTAMP
}
}*/
}
})
}
}
后台解密
微信官方提供了多种编程语言的示例代码((点击下载)。每种语言类型的接口名字均一致。调用方式可以参照示例
如果已使用过之前微信支付讲过的微信官方提供的wechatpay开发库,那直接使用其 敏感信息加/解密 功能就再简单不过了
要下载的话可以去之前微信支付的博文里下载,这里就不一一列出来了