收藏
回答

小程序获取用户手机号的最佳方式是什么?

技术文档里说目前有两种获取用户手机号的方法

https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/getPhoneNumber.html

新版本接口通过获取到一个code,再使用code通过https或云函数换取用户手机号;由于这个方法要求小程序的基础库 2.21.2 以上,对用户的微信客户端的版本也就有了要求。为了能获取到更多的的用户的手机号,只能降低基础库版本,就不能使用新版本接口获取手机号了。

旧版本接口需要将 button 组件 open-type 的值设置为 getPhoneNumber,当用户点击并同意之后,可以通过 bindgetphonenumber 事件回调获取到微信服务器返回的加密数据, 然后在第三方服务端结合 session_key 以及 app_id 进行解密获取手机号。这种方法没有说明如何与第三方服务端结合 session_key 以及 app_id 进行解密获取手机号,因此也没有使用这个方法;

我现在使用的方法,没有在官方文档里写出来,这个方法是使用cloudID,直接调用云函数获取开放数据。其中就有用户的手机号。由于这个方法没有明确说明,担心有一天会出问题。因为想请问一下,这个如何获取用户的手机号最好?

回答关注问题邀请回答
收藏

2 个回答

  • 跨商通
    跨商通
    2022-04-12

    1、不用改。还用cloudID就行了。

    2022-04-12
    有用
    回复
  • Mr.Zhao
    Mr.Zhao
    2022-04-12

    担心是多余的,多关注公告就行了

    2022-04-12
    有用
    回复 4
    • 阿白
      阿白
      2022-04-12
      我的微信就不能获取到code,因为版本低了
      2022-04-12
      回复
    • Mr.Zhao
      Mr.Zhao
      2022-04-12回复阿白
      那就兼容下低版本呗
      2022-04-12
      回复
    • 阿白
      阿白
      2022-04-12
      怎么兼容版本?使用最低版本的基础库吗?这样就不能用最新的获取手机号的方法了
      2022-04-12
      回复
    • Mr.Zhao
      Mr.Zhao
      2022-04-12回复阿白
      能获取到手机号不就行了,为啥要折腾呢?老版本不支持,想用就更新版本,要么开发者判断版本号,写个if else  新版本用code,没有code调云函数   我真觉得没必要折腾,能获取就行
      2022-04-12
      回复
登录 后发表内容