ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

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

2021-04-15 18:01:05  阅读:245  来源: 互联网

标签:res detail 微信 前端 getPhoneNumber iv encryptedData 手机号码 wx


<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
	      })
        }
      })
    }
  },

标签:res,detail,微信,前端,getPhoneNumber,iv,encryptedData,手机号码,wx
来源: https://blog.csdn.net/weixin_40944062/article/details/115732502

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有