微信小程序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绑定的事件来获取回调。回调的参数有三个,
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.解密的方法可以去微信官方开发文档查看,有很详细说明。
如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
如对本文有疑问, 点击进行留言回复!!
JavaScript 好题汇总分享(持续更新,看到好题就写)
XMLHttpRequest 2级 &&进度事件&&JSONP
使用递归原生实现拷贝&&最简单的方法实现深拷贝
网友评论