微信小程获取用户手机号昵称提示

964 阅读1分钟

因为业务需求要做微信小程序的手机号和用户昵称的授权,并解密获取绑定手机号,如下图

aca35a5356efd94780327c907b0d51f.jpg

50168886978fc1f42b268027f7e24aa.jpg

需求一:先弹出获取昵称头像信息,允许后弹出获取手机号

获取手机号

获取手机号必选先进行微信认证

  1. 登陆微信公众平台
  2. 点击头像

image.png 3. 需要花钱进行认证

image.png 4. 使用组件(获取手机号)

<button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber">11</button>
  getPhoneNumber: function (e) {
    console.log(e)
    console.log(e.detail.errMsg)
    console.log(e.detail.iv)
    console.log(e.detail.encryptedData)
  },
  1. 就可以在微信开发者工具中调试就会出现啦

获取用户头像昵称

<button bindtap="getUserProfile">头像</button>
  getUserProfile(e) {
    // 推荐使用wx.getUserProfile获取用户信息,开发者每次通过该接口获取用户个人信息均需用户确认
    // 开发者妥善保管用户快速填写的头像昵称,避免重复弹窗
    wx.getUserProfile({
      desc: '用于完善会员资料', // 声明获取用户个人信息后的用途,后续会展示在弹窗中,请谨慎填写
      success: (res) => {
        this.setData({
          userInfo: res.userInfo,
          hasUserInfo: true
        })
      }
    })
  },

解密手机号

解密手机号需要使用 小程序的appid和密钥去换取

  1. developers.weixin.qq.com/miniprogram…
  2. developers.weixin.qq.com/miniprogram…
  3. developers.weixin.qq.com/miniprogram…
graph TD
1的code --> 2的phone_info
3的access_token --> 2的phone_info