小程序获取用户手机号

简介: 小程序获取用户手机号

通过获取用户手机号,可以省去很多操作,是比较常见的功能。

获取用户手机号码 分为以下几步:

第一点击页面获取授权按钮

第二获取用户授权参数

第三根据加解密算法解密手机号码

需要将 button 组件 open-type 的值设置为 getPhoneNumber,当用户点击并同意之后,可以通过 bindgetphonenumber 事件回调获取到微信服务器返回的加密数据, 然后在第三方服务端结合 session_key 以及 app_id 进行解密获取手机号。

<button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber"></button>

getPhoneNumber是微信官方要求,获取用户手机号码授权

onGetPhoneNumber是回调函数,获取授权后会回调到该方法,也就是获取的电话号码就在这个函数的返回值里面。当然这个函数是自定义的,名字大家可以随便起,上面的getPhoneNumber可不能随便修改。

onGetPhoneNumber(e) {
    var that = this;
    wx.login({
      success (res) {
        if (res.code) {
          console.log('步骤2获检查用户登录状态,获取用户电话号码!', res)
          wx.request({
            url: '这里写自己的接口',
            data: {code: res.code},
            success: function(res) {
              console.log("步骤三获取授权码,获取授权openid,session_key",res);
              var userphone=res.data.data;
              wx.setStorageSync('userphoneKey',userphone);
              //解密手机号
              var msg = e.detail.errMsg;
              var sessionID=wx.getStorageSync("userphoneKey").session_key;
              var encryptedData=e.detail.encryptedData;
              var iv=e.detail.iv;
              if (msg == 'getPhoneNumber:ok') {//这里表示获取授权成功
                wx.checkSession({
                  success:function(){
                        //这里进行请求服务端解密手机号
                    that.deciyption(sessionID,encryptedData,iv);
                  },
                  fail:function(){
                    // that.userlogin()
                  }
                })
              }
            },fail:function(res){
                console.log("fail",res);
            }
          })
        } else {
          console.log('登录失败!' + res.errMsg)
        }
      }
    })


相关文章
|
3天前
|
小程序 Devops 开发工具
支付宝小程序入门学习之一:如何创建支付宝小程序并在手机上预览
支付宝小程序入门学习之一:如何创建支付宝小程序并在手机上预览
33 0
|
6月前
|
移动开发 小程序 Android开发
小程序webview组件嵌H5页面,安卓手机没有问题,苹果有部分页面不显示
小程序webview组件嵌H5页面,安卓手机没有问题,苹果有部分页面不显示
110 0
|
6月前
|
小程序 JavaScript API
uniapp微信小程序获取用户手机号
uniapp微信小程序获取用户手机号
176 0
|
8月前
|
小程序
uniapp小程序单页面改变手机电量,头部通知的颜色效果demo(整理)
uniapp小程序单页面改变手机电量,头部通知的颜色效果demo(整理)
|
3天前
|
存储 JSON 小程序
html在线预览CAD(手机小程序浏览DWG)二次开发图层表的方法
本文档介绍了DWG数据库中图层的存储结构及MxCAD库对图层的操作。图层信息存储于图层层表McDbLayerTable()中,每个记录对应一个图层,包含颜色、线型等属性,且有一个不可删除的默认"0"层。主要操作包括:通过MxCpp.getCurrentMxCAD()获取图层表,使用addLayer()添加图层,遍历图层,以及删除图层。此外,还展示了如何修改图层的关闭、冻结、锁定状态及颜色。提供了在线示例以演示这些功能。
html在线预览CAD(手机小程序浏览DWG)二次开发图层表的方法
|
3天前
|
小程序 前端开发 JavaScript
前端Uni-app开发微信小程序|微信小程序手机商城
前端Uni-app开发微信小程序|微信小程序手机商城
|
3天前
|
小程序 算法 数据安全/隐私保护
小程序获取用户手机号
小程序获取用户手机号
|
3天前
|
小程序
小程序获取用户手机号
小程序获取用户手机号
35 0
|
3天前
|
小程序 JavaScript API
微信小程序获取手机号流程以及用到的API
微信小程序获取手机号流程以及用到的API
97 0
|
3天前
|
小程序 算法 API
小程序微信支付API?小程序获取手机号?
小程序微信支付API?小程序获取手机号?
54 0

热门文章

最新文章