微信小程序getPhoneNumber获取用户手机号
小程序中有很多地方都会用到注册用户信息的地方,用户需要填写手机号等, 有了这个组件可以快速获取微信绑定手机号码,无须用户填写。
1.getPhoneNumber这个组件通过button来实现(别的标签无效)。将button中的open-type=“getPhoneNumber”,并且绑定bindgetphonenumber事件获取回调。
<button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber">
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')
6.解密的方法可以去微信官方开发文档查看,有很详细说明。
加密数据解密算法(官方文档)
如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
暂无“微信小程序getPhoneNumber获取用户手机号”评论...
更新动态
2024年11月13日
2024年11月13日
- 手办鉴赏室:露比的日常约会装!神秘少女的经典制服
- 年轻人开始养黏菌当宠物了 2年内就超越了欧美和日本
- 在国际数字音乐节上 我听宫奇聊了聊星铁和游戏音乐
- 别着急入手!玩家热议PS5 Pro溢价持续不了多久
- 刘若英《老歌回忆录》原抓 [WAV+CUE][569M]
- 雷婷《今生最爱》原音1:1母版直刻CD 正版CD低速原抓[WAV+CUE][528M]
- BEYOND《金碟至尊精选》(24K碟)2020[WAV+CUE][1.1G]
- 【原神】冒险指南 | 全新敌人出现!
- 冒险指南 | 探寻神秘而传奇的「烟谜主」...
- 「百货奇货」活动:开奇货匣得原石
- 群星.2009-她的沧海遗珠精选(金碟铁盒珍藏系列)【SONY】【WAV+CUE】
- 王中平.1993-天知道我爱你【蓝与白】【WAV+CUE】
- 郭富城.2004-城意三步曲【华纳】【WAV+CUE】
- 那英《知英情歌》[原抓WAV+CUE]
- 龚玥《永远民歌红》11直刻母带级重生金CD[低速原抓WAV+CUE]