小程序获取手机号操作,获取微信用户绑定的手机号,需先调用wx.login接口。因为需要用户主动触发才能发起获取手机号接口,所以该功能不由 API 来调用,需用 组件的点击来触发,也就是用户主动点击按钮后,会有弹窗提示是否授权获取手机号。

注意:目前该接口针对非个人开发者,且完成了认证的小程序开放(不包含海外主体)。需谨慎使用,若用户举报较多或被发现在不必要场景下使用,微信有权永久回收该小程序的该接口权限。

使用方法

需要将 组件 open-type 的值设置为 getPhoneNumber,当用户点击并同意之后,可以通过 bindgetphonenumber 事件回调获取到微信服务器返回的加密数据, 然后在第三方服务端结合 session_key 以及 app_id 进行解密获取手机号。

js处理代码:

Page({

getPhoneNumber(e) {

console.log(e.detail.errMsg)

console.log(e.detail.iv)

console.log(e.detail.encryptedData)

}

})

注意

在回调中调用 wx.login 登录,可能会刷新登录态。此时服务器使用 code 换取的 sessionKey 不是加密时使用的 sessionKey,导致解密失败。建议开发者提前进行 login;或者在回调中先使用 checkSession 进行登录态检查,避免 login 刷新登录态。

当用户点击获取手机号按钮后,会触发getPhoneNumber()方法,小程序根据用户是否允许获取,返回不同的数据。若用户允许,返回的数据为:

getPhoneNumber:ok

c6u1J5ceq7T/+Zfia2g1sw==

9BUI4wsZpxelxuYIzpFAFQyZiqQFd3/ap9DAzHKhFAXGGTME2xjVI3Gpb5BvLVpl9vx4bwW2elI7fyGinn0vwufuF5NP8BMWZ7wAwX4hShxWwkPvfxUrSTlTy+nlzEs5Ps50S5hTaenudQH3vVprL/yzLYQYf7Pq85JHUCOUmc21zB/+hcdoBGr6Reu+rvo1GWh1vWf8aEYRT60rlLvcvw==

返回参数说明:

参数

类型

说明

encryptedData

String

包括敏感数据在内的完整用户信息的加密数据,详细见加密数据解密算法

iv

String

加密算法的初始向量,详细见加密数据解密算法

此时的encryptedData为加密的数据,需要进行解密后才能获取用户完整的手机号。解密后的数据格式为:

{

"phoneNumber": "13580006666",

"purePhoneNumber": "13580006666",

"countryCode": "86",

"watermark": {

"appid": "APPID",

"timestamp": TIMESTAMP

}

}

参数

类型

说明

phoneNumber

String

用户绑定的手机号(国外手机号会有区号)

purePhoneNumber

String

没有区号的手机号

countryCode

String

区号

若用户拒绝,返回数据为:

getPhoneNumber:fail user deny

undefined

undefined

小程序获取城市行政区号_小程序获取用户手机号操作代码示例相关推荐

  1. 小程序获取城市行政区号_小程序中通过经纬度如何获取所在省市区名字(腾讯地图JavaScript SDK)...

    在小程序中通过经纬度来获取所在省市区名字,这个功能还是挺有意思的,小程序中竟然不直接返回所在省市区,只提供经纬度,还需要腾讯地图来获取,还是有点小坑的,不注意的话很容易出问题.废话不多说,请看下文. ...

  2. 小程序获取城市行政区号_支付宝小程序开发——获取位置API没有城市区号的最佳处理方案...

    前言: 需要对城市区号进行判断,但是支付宝小程序提供的my.getLocation() API返回的数据中只有6位的城市行政代码,诸如:深圳(440300),并没有区号(0755),那么怎么办呢? 需 ...

  3. 小程序获取城市行政区号_微信小程序 省市区选择器实例详解(附源码下载)

    微信小程序 省市区选择器: 最近学习微信小程序,为了检验自己的学习效果,自己做一个小示例,网上搜索下类似的实例,发现这个更好,大家看下. 一.区域间手势滑动切换,标题栏高亮随之切换 思路是:拿当前的c ...

  4. 小程序webview关注公众号_公众号与小程序有什么区别

    自从2017年1月,腾出推出小程序以来,不少企业.商家都纷纷开发了属于自己的小程序.而这些企业之前往往已经拥有属于自己微信公众号,但为什么又要开发小程序呢?公众号与小程序有什么区别?下面不妨跟着上海黄 ...

  5. 小程序webview关注公众号_微信小程序和公众号互相跳转

    一.前言 微信小程序继微信公众号后,已经被越来越多的人使用,它的优点很多:不占内存.入口场景丰富.流量红利大.支持付费推广.可关联公众号等. 很多公众号,都或多或少的会去开发自己的微信小程序,这里就有 ...

  6. 小程序webview关注公众号_公众号如何关联小程序

    公众号如何关联小程序 现在公众号已经是我们生活中非常常见的推广营销的工具了,都说以前1.0的PC时代,是网站的时代,而现在2.0的移动时代是公众号的时代,但是公众号类似H5的链接的形式,用户的体验感不 ...

  7. c++获取子类窗口句柄位置_干货分享:用一百行代码做一个C/C++表白小程序,程序员的浪漫!...

    前言:很多时候,当别人听到你是程序员的时候.第一印象就是,格子衫.不浪漫.直男.但是程序员一旦浪漫起来,真的没其他人什么事了.什么纪念日,生日,情人节,礼物怎么送? 做一个浪漫的程序给她,放上你们照片 ...

  8. 小程序input获得焦点触发_小程序如何获得种子用户,微信9亿月活用户来教你!...

    小程序虽已上线2年了,但在微信生态中还非常年轻,正处于学习奔跑的阶段.而且,许多商家对于如何正确获得第一批种子用户,并不十分清楚. 今天,企乐网就以如何定位种子用户?种子用户在哪里获得?用什么方法沉淀 ...

  9. 小程序数据框有重影_小程序开发(二):数据绑定

    前言: 第一章讲到了如何去创建一个项目,并且在模拟器上显示出来hello world,但是程序开发中,很多的数据都是从服务器去获取或者显示的数据会根据用户的操作来变化的,所以我们需要用到数据绑定. 数 ...

最新文章

  1. 模板 - 输入输出优化
  2. Window环境下配置MySQL 5.6的主从复制、备份恢复
  3. 2016.7.14最新cocoapods最新安装教程
  4. 数据挖掘竞赛-美国King County房价预测训练赛
  5. 国际化组件 Unicode (ICU) 函数库
  6. 用随机整数填充缺失值_输入一个整数值并在C中用零填充进行打印
  7. 解决maven内存溢出
  8. asp.net中验证控件的使用方法
  9. foreman架构的引入6-整合puppetmaster
  10. 阿里巴巴最新分销模式淘易客分销
  11. python调用pyd_Python import / pyd / dll
  12. 编写一个C语言程序 实现自我介绍,用c语言编程实现,别出心裁的情侣拍照
  13. 多种方式实现字幕滚动效果
  14. 使用JDK中的安全包对数据进行加解密
  15. 互联网创新创业大赛优秀范例_第五十九期创业沙龙——“互联网+”大学生创新创业大赛实践案例...
  16. 服务器一般装在哪个位置,立尔讯塔式服务器一般使用在哪些地方?
  17. 如何免费开通微信公众号留言功能(上)
  18. SAP TRM 中的詹森阿尔法指数(Jensen's alpha)计算
  19. 区块链带来的技术创新和变革
  20. [转载]晒客族风生水起

热门文章

  1. 王牌仔的小星愿数字藏品获奖名单公布
  2. python docx 添加浮空图片
  3. VC++中InsertItem和SetItemText的区别
  4. outlook收件箱显示_在Outlook 2003/2007中快速清理收件箱
  5. H3C-QoS实例七:流量整形与端口限速
  6. 速度提升80% 360手机浏览器推G5内核版
  7. APISpace中秋API推荐
  8. onenote离线无法同步解决办法
  9. Yate 电话引擎安装
  10. 华南理工计算机考研王道论坛,复习详尽攻略:梦圆华工中探花