• 技术文章 >微信小程序 >小程序开发

    小程序如何获取手机号信息

    angryTomangryTom2020-03-26 11:16:52原创93

    小程序如何获取手机号信息

    1、在获取手机号码之前,要先进行登陆。

    使用wx.login进行登录,登录成功会返回一个code,将code传给后台,获取登录密钥session_key等信息。将这些信息存入data。

    推荐学习:小程序开发

    2、使用type="getPhoneNumber"的button获取encryptedData,iv将这两个信息和session_key传给后台,通过解密返回正确的手机号码。

    <button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber">
       手机号领取
    </button>

    通过点击之后获取到的信息为

    微信截图_20200326111252.png

    在 请求后台接口之前要先用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中文网其它相关文章!

    本文原创发布php中文网,转载请注明出处,感谢您的尊重!
    专题推荐:小程序 获取手机号
    上一篇:一个完整的小程序需要什么功能 下一篇:小程序如何改变元素的样式

    相关文章推荐

    • 做微信小程序需要什么资质• 一个账号只能开发一个小程序吗• 一个执照能绑几个小程序• 小程序如何使用md5

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网