微信小程序获取手机号码看这篇文章就够了

前言

微信小程序获取手机号码,从官方文档到其余博主的文档 零零散散的 (我就是这样看过来 没有一篇满意的 也许是我搜索姿式不对) 依旧是前人栽树 后人乘凉 系列。保证看完 就能够实现获取手机号码功能前端

1.认证(有资格)

获取手机号码接口权限,只对认证的小程序开发(非我的)小程序

2.身份牌

须要第三方服务端(大家的后端童鞋)的友情支持后端

  • 前端同窗的工做
// 登陆 必定要在如今app.js 登录(后面解密须要用到)
    wx.login({
      success: res => {
        // 发送 res.code 到后台换取 openId, sessionKey, unionId
        this.globalData.code =  res.code
        http.authCode2Session({ // 调用接口,传入参数 这个接口就是自家后台给你提供的 post请求
          data: {
            jsCode: res.code,
            grantType: 'getPhoneNumber',
          },
          success: res => {
            this.globalData.openid = res.openid // 存入 globalData 
          },
          fail: err => {
            console.log(err)
          }
        })
      }
    })
复制代码
  • 后端工做 (我不是后端 没有这个代码 可是根据小程序文档来作是能够的)

入口

拿到了openid sessionkey 以后,而后再写一个入口 button微信小程序

<button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber"></button>
复制代码

回调

在页面写函数getPhoneNumber()bash

Page({
  getPhoneNumber (e) {
    console.log(e.detail.errMsg)
    console.log(e.detail.iv)
    console.log(e.detail.encryptedData)
  }
})
复制代码

真机调试

开发工具是不能够的,真机调试 拿本身的手机调试一下微信

就是这样子的session

解密

前端拿到的数据是加密的。只好后端作一个保存接口 传给后端,后端再去解密 才能真的拿到用户的手机号码app

解密后的数据是这样子的函数

Fannie总结

应该是写的明明白白 清清楚楚了 若是你还不明白 就是个人锅 没有写清楚 那就来问我吧工具

相关文章
相关标签/搜索