uniapp获取手机号

2022年4月18日 397点热度 0人点赞 0条评论

uniapp获取手机号

微信文档

从基础库 2.21.2 开始,对获取手机号的接口进行了安全升级,以下是新版本接口使用指南。(旧版本接口目前可以继续使用,但建议开发者使用新版本接口,以增强小程序安全性)

因为需要用户主动触发才能发起获取手机号接口,所以该功能不由 API 来调用,需用 button 组件的点击来触发。另外,新版本接口不再需要提前调用wx.login进行登录。

注意

目前该接口针对非个人开发者,且完成了认证的小程序开放(不包含海外主体)。需谨慎使用,若用户举报较多或被发现在不必要场景下使用,微信有权永久回收该小程序的该接口权限;在使用该接口时,用户可使用微信绑定手机号进行授权,也添加非微信绑定手机号进行授权。若开发者仅通过手机号作为业务关联凭证,在重点场景可适当增加短信验证逻辑。

使用方法

需要将 button 组件 open-type 的值设置为 getPhoneNumber,当用户点击并同意之后,可以通过 bindgetphonenumber 事件回调获取到动态令牌code,然后把code传到开发者后台,并在开发者后台调用微信后台提供的 phonenumber.getPhoneNumber 接口,消费code来换取用户手机号。每个code有效期为5分钟,且只能消费一次。

注:getPhoneNumber 返回的 code 与 wx.login 返回的 code 作用是不一样的,不能混用。

代码示意

<button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber"></button>
  getPhoneNumber (e) {      if (e.detail.errMsg == 'getPhoneNumber:fail user deny') {        // console.log('用户拒绝提供手机号')      } else {          console.log(e.detail.code)      }  }

返回参数说明

参数 类型 说明 最低版本
code String 动态令牌。可通过动态令牌换取用户手机号。 -

封面图

图片

37040uniapp获取手机号

这个人很懒,什么都没留下

文章评论