您好,登錄后才能下訂單哦!
小程序中有很多地方都會用到注冊用戶信息的地方,用戶需要填寫手機號等,有了這個組件可以快速獲取微信綁定手機號碼,無須用戶填寫。
1.getPhoneNumber這個組件通過button來實現(別的標簽無效)。將button中的open-type=“getPhoneNumber”,并且綁定bindgetphonenumber事件獲取回調。
<span ><button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber"></button></span>
2.在使用這個組件之前必須先調用login接口,如果沒有調用login點擊button時會提示先調用login。
App({ onLaunch: function () { wx.login({ success: function (res) { if (res.code) { //發起網絡請求 console.log(res.code) } else { console.log('獲取用戶登錄態失敗!' + res.errMsg) } } }); } })
3.通過bindgetphonenumber綁定的事件來獲取回調。回調的參數有三個,
errMsg:用戶點擊取消或授權的信息回調。
iv:加密算法的初始向量(如果用戶沒有同意授權則為undefined)。
encryptedData: 用戶信息的加密數據(如果用戶沒有同意授權同樣返回undefined)
getPhoneNumber: function(e) { console.log(e.detail.errMsg) console.log(e.detail.iv) console.log(e.detail.encryptedData) if (e.detail.errMsg == 'getPhoneNumber:fail user deny'){ wx.showModal({ title: '提示', showCancel: false, content: '未授權', success: function (res) { } }) } else { wx.showModal({ title: '提示', showCancel: false, content: '同意授權', success: function (res) { } }) } }
4.最后我們需要根據自己的業務邏輯來進行處理,如果用戶不同意授權的話可能我們會有一個讓他手動輸入的界面,如果不是強制獲取手機號的話可以直接跳轉頁面進行下一步。(用戶不同意授權errMsg返回‘getPhoneNumber:fail user deny')
5.用戶同意授權,我們可以根據login時獲取到的code來通過后臺以及微信處理拿到session_key,最后通過app_id,session_key,iv,encryptedData(用戶同意授權errMsg返回‘getPhoneNumber:ok')
總結
以上所述是小編給大家介紹的微信小程序獲取手機號授權用戶登錄功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網站的支持!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。