微信小程序获取手机号码(仅前端部分

2021/4/15 20:28:24

本文主要是介绍微信小程序获取手机号码(仅前端部分,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

<button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber"></button>
  • 第一步,获取手机号码之前, 需要调用wx.login()方法去获取到code(当然, 如果你放在getPhoneNumber里面也是可以的.
  • 第二步,需要用户手动点击获取手机号的按钮, 触发getPhoneNumber方法.
// 放在onload()方法中, 在页面一加载完成就调用
    wx.login({
      timeout: 1000,
      success(res) {
        //console.log(res);
        that.setData({
          loginCode: res.code
        })
		// 这里需要用户和后端实现一个回话. 
      fail(err) {
        //console.log(err);
      	}
      })
  	})
  getPhoneNumber(e) {
    let that = this
    this.setData({
      iv: e.detail.iv,
      encryptedData: e.detail.encryptedData
    })
    // 这里根据用户点击, 判断一下, 如果点击了取消, 将触发下面方法
    if(e.detail.errMsg == 'getPhoneNumber:fail user deny'){
      wx.showToast({
        title: '请您授权手机号,以便提供更好服务',
        icon:'none',
        duration:5000
      })
      // 如果用户点了确定, 那么, 前端拿到这个iv和encryptedData传给后端小哥哥进行解密
    }else {
      wx.request({
        url: 'https://xxxxx',
        data:{
          iv:JSON.stringify(that.data.iv),
          d: JSON.stringify(that.data.encryptedData)
        },
        method:'POST',
        header: {
          'content-type': 'application/x-www-form-urlencoded',
          // 带上cookie
          Cookie: wx.getStorageSync('cookie')
        },
        success(res){
        // 根据后端小哥哥传回的数据, 做后续操作
          that.setData({
            getPhone:false
          })
	       wx.showToast({
	        title: '登录成功!',
	        duration:1000
	      })
        }
      })
    }
  },


这篇关于微信小程序获取手机号码(仅前端部分的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程