在开发小程序中,经常遇到获取用户手机号,所以在此记录一个获取用户手机号的例子,方便日后使用
获取手机号,需要提前获取用户的sessionKey。因为获取到手机是加密的需要后端解密手机号,就需要微信官方提供类来解密,这里后端使用的PHP。

下载地址及下载位置

地址:微信手机号码解密后端文件地址

下载后选择对应的后端

前端

页面中的按钮需要特殊的加上open-type='getPhoneNumber',完整按钮如下

<button wx:else class="tel_btn" size="mini"  open-type='getPhoneNumber' bindgetphonenumber="getPhoneNumber">获取手机号</button>

从上代码中的bindgetphonenumber="getPhoneNumber"可以看到,是需要一个getPhoneNumber函数,代码如下

var requesurl = "http://xxx.xxxxxxxxxx.com/wxapp/kq.php";
getPhoneNumber (e) {var that =this;wx.showLoading({title: '加载中',});if(e.detail.errMsg == "getPhoneNumber:ok"){// console.log(that.data.sessionKey); //手机号需要sessionKeywx.request({url: requesurl+'?action=wxtel',method: "post",header: {'content-type':'application/x-www-form-urlencoded'},dataType: 'json',responseType: 'text',data: {encryptedData: e.detail.encryptedData,iv: e.detail.iv,sessionKey: that.data.sessionKey,uid: "",},success: function (res) {console.log(res.data.data.wxteldata.phoneNumber);that.setData({wxtel:res.data.data.wxteldata.phoneNumber,usertel:res.data.data.wxteldata.phoneNumber});          // console.log(that.data.wxtel);wx.hideLoading();}})}else{wx.showToast({title: '获取失败',icon: 'none',duration: 2000})}},

后端

include_once "wxphp/wxBizDataCrypt.php"; //首先引入从微信官网下载好的文件if($action === 'wxtel'){$encryptedData = $_POST['encryptedData'];$iv = $_POST['iv'];$sessionKey = $_POST['sessionKey'];$wxteldata = "";$pc = new WXBizDataCrypt($AppId, $sessionKey); //调用微信官方类$errCode = $pc->decryptData($encryptedData, $iv, $wxteldata); //调用微信官方函数if ($errCode == 0) {echoResult(1, '获取成功', array("wxteldata"=>json_decode($wxteldata,true)), 1);// print($wxteldata . "\n");} else {echoResult(0, '获取失败', array(), 1);// print($errCode . "\n");}
}

返回结果

微信小程序获取用户绑定手机号相关推荐

  1. 微信小程序获取用户绑定手机号码完整版(转载)

    一.准备阶段 创建小程序项目(测试号即可) 创建Java后台项目(此处为SpringBoot 普通项目) 二.前端代码 WXML 代码 <!--index.wxml--> <view ...

  2. 微信小程序python解析获取用户手机号_微信小程序获取用户手机号

    获取微信用户绑定的手机号,需先调用wx.login接口. 小程序获取code. 后台得到session_key,openid. 组件触发getPhoneNumber 因为需要用户主动触发才能发起获取手 ...

  3. 微信小程序获取用户手机号--官方示例

    微信小程序获取用户手机号–官方示例 https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/getPhoneNu ...

  4. 微信小程序 error 用户绑定的手机号需要验证,请在客户端完成短信

    微信小程序 error 用户绑定的手机号需要验证,请在客户端完成短信 第一步在电脑上点编译 第二步点击预览 再点击自动预览 第三步打开手机上的小程序确认授权 输入短信验证码 之后就可以运行了 我点二维 ...

  5. springboot 微信小程序获取用户手机号 最新方式

    springboot 微信小程序获取用户手机号 直接开整!!! 现在有两种方式获取微信用户的手机号 第一种 这种方式比较旧了,也能获取到手机号,但不建议使用. 1.前端调用wx.login()(官方的 ...

  6. 微信小程序获取用户手机号授权方法

    微信小程序获取用户手机号方法 首先在 app.json 页面添加一个新的用户授权页面,放在首页index的后面即可 在 app.js 页面中编写如下代码: 这里包含了获取用户信息的相关代码 //app ...

  7. 微信小程序获取用户手机号码,Java后台servlet解密(微信小程序调用微信支付也是大致的流程)

    本篇记录说明 微信小程序获取用户手机号码,Java后台servlet解密(微信小程序调用微信支付也是大致的流程,详细内容可私信交流) (第一次写博客,写得不好的地方见谅,面向新手,大佬请无视,不喜勿喷 ...

  8. 微信小程序获取用户信息

    微信小程序获取用户信息 微信小程序获取用户信息接口做了调整: 2021年4月28日24时后发布的小程序新版本,无法通过wx.getUserInfo与获取用户个人信息(头像.昵称.性别与地区),将直接获 ...

  9. 微信小程序-获取用户位置(经纬度+所在城市)

    微信小程序-获取用户位置(经纬度+所在城市) 文章目录 微信小程序-获取用户位置(经纬度+所在城市) 一.目标 二.实现思路 三.实现步骤 3.1 用到的接口函数 3.2 具体步骤 3.2.1 创建界 ...

  10. 微信小程序获取用户信息流程(2022年版)

     开门见山地说,本文主要讲述微信小程序在2022年以后获取用户信息的主要方法,如果想要了解2022年之前微信小程序获取用户信息的相关知识或者是微信小程序之前这部分的设计思想的话,推荐博主的下面这篇博客 ...

最新文章

  1. php回调函数如何执行顺序,PHP回调函数调用方式
  2. mk_trustonic.mk编译脚本
  3. STM32超声波模块测距串口输出/通用定时器中断并输出PWM控制舵机/系统定时器延时
  4. gzip和gunzip 解压参数
  5. Spring中的9种设计模式汇总
  6. 给指定Python版本安装指定版本库的办法
  7. 学校计算机社团都干些什么,计算机社团管理制度
  8. 初探 amaze-vue( 基于vue.js封装的Amaze UI 组件库)
  9. bzoj3545/bzoj3551 [ONTAK2010]Peaks/Peaks加强版
  10. 何宾 单片机原理及应用_单片机原理及应用课后答案讲解
  11. 考研数学公式默写记忆PDF
  12. 装逼神器,逼真黑客范儿
  13. 计算机维修的入门知识
  14. Java基础15-多线程
  15. 不用的MacBook这样处理比较好
  16. 文本分析常用R包的安装(Rweibo、wordcloud、tm、tmcn、Rwordseg、Rcharts、xlsx、XLConnect)
  17. parameter server介绍
  18. DNS和BIND总结
  19. 1000桶水,其中一桶有毒,猪喝毒水后会在15分钟内死去,想用一个小时找到这桶毒水,至少需要几头猪?具体该如何实现方法讲解
  20. 以后我给你们上课的机会可能越来越少了

热门文章

  1. 嵌入式字符设备驱动——ULN2003步进电机驱动程序实现
  2. QQ登录界面测试用例设计:
  3. BMC指定4路NCSI网口中的一路
  4. Laravel文档阅读笔记-Custom Authentication Login And Registration Using Laravel 8
  5. linux mtd手动烧写固件,路由器固件的几种烧写方式
  6. 如何批量压缩图片?这几个方法值得一试
  7. PowerApps 社区计划:供个人使用的免费开发环境
  8. 图片双面打印顺序混乱_打印,那些你没有注意的小细节
  9. MD5以及SHA加密不在安全的分析
  10. Linux命令:grep -v grep的作用 使用场景