
小程式如何取得手機號碼資訊
1、在取得手機號碼前,先登陸。
使用wx.login登入,登入成功會傳回一個code,將code傳給後台,取得登入金鑰session_key等資訊。將這些資訊存入data。
推薦學習:小程式開發
2、使用type="getPhoneNumber"的button取得encryptedData,iv將這兩個資訊和session_key傳給後台,透過解密返回正確的手機號碼。
<button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber"> 手机号领取 </button>
透過點擊之後所獲得的資訊為

在請求後台介面前要先用wx.checkSession判斷登入狀態是否過期,如果過期就需要取得新的session_key。
getPhoneNumber(e) {
var msg = e.detail.errMsg, that = this;
var that = this;
var sessionID=that.data.userinfo.Session_key,
encryptedDataStr=e.detail.encryptedData,
iv= e.detail.iv;
if (msg == 'getPhoneNumber:ok') {
wx.checkSession({
success:function(){
that.deciyption(sessionID,encryptedDataStr,iv);
},
fail:function(){
wx.login({
success: res => {
console.log(res,'sessionkey过期')
wx.request('url',{code:res.code},function(res){
var userinfo=res.data.data;
wx.setStorageSync('userinfo',userinfo);
that.setData({
userinfo:userinfo
});
that.deciyption(userinfo.Session_key,encryptedDataStr,iv);
})
}
})
}
})
}
},
deciyption(sessionID,encryptedDataStr,iv){
wx.request('url', {
sessionID: sessionID,
encryptedDataStr:encryptedDataStr,
iv: iv
}, function (res) {
//这个res即可返回用户的手机号码
})
},以上是小程式如何取得手機號碼訊息的詳細內容。更多資訊請關注PHP中文網其他相關文章!