收藏
回答

小程序 getPhoneNumber 获取手机号在开发工具中测试是成功的,在体验版中失效,如何解决?

小程序调用 getPhoneNumber 和 login 接口 获取到 encryptedData,iv,code 通过后台请求 https://api.weixin.qq.com/sns/jscode2session 接口,获取到 openid与session_key,解密encryptedData后,开发工具中调试得到的是  {"phoneNumber":"xxxxxxxxx","purePhoneNumber":"xxxxxxxxx","countryCode":"xxxxxxxxx","watermark":{"timestamp":1603791587,"appid":"xxxxxxxxx"}},体验版中得到的是 {"openId":"xxxxxxxxx","nickName":"xxxxxxxxx","gender":0,"language":"zh_CN","city":"","province":"","country":"","avatarUrl":"xxxxxxxxx","watermark":{"timestamp":xxxxxxxxx,"appid":"xxxxxxxxx"}}。一个是手机号数据,一个是微信用户信息数据。这是什么原因导致的,如果直接提交成正式版,会成功获取到手机号数据吗?



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

1 个回答

  • 拾忆
    拾忆
    2020-10-27

    怀疑你这个属性有问题,但是又没证据。

    2020-10-27
    有用
    回复 4
    • 吴宇涛 17786522033
      吴宇涛 17786522033
      2020-10-27
      不太懂小程序开发。有点可能是这个问题,客户需求是微信登录时又获取手机号,又获取到微信信息。所以我用了按钮,调用 getPhoneNumber,getPhoneNumber中又调用了其他接口
      一下是流程
      getPhoneNumber{//点击登录
            wx.login{//调用登录接口
              wx.request{//http接口从后台解密获取手机号
                wx.getUserInfo{//获取用户信息
                  wx.request{//http接口保存数据
                  }
                }
              }
            }
          }
      2020-10-27
      回复
    • 拾忆
      拾忆
      2020-10-27回复吴宇涛 17786522033
      那个属性是在 wxml 里,你看看那个button代码里怎么设置的。
      2020-10-27
      回复
    • 吴宇涛 17786522033
      吴宇涛 17786522033
      2020-10-27
      <button class='bottom' type='primary' open-type="getPhoneNumber" lang="zh_CN" bindgetphonenumber="getPhoneNumber" >
                  微信一键登录
              </button>
      2020-10-27
      回复
    • 拾忆
      拾忆
      2020-10-27
      不支持一个按钮同时获取用户信息和手机号,需要分开写按钮。
      2020-10-27
      回复
登录 后发表内容
问题标签