微信小程序实现获得用户手机号

时间:2024-10-07 14:00:44

具体操作方法如下:

使用方法

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

 

注意

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

 

例子

<button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber"> </button> 
  1. Page({
  2. getPhoneNumber: function(e) {
  3. console.log(e.detail.errMsg) console.log(e.detail.iv) console.log(e.detail.encryptedData) } })



返回参数说明

参数 类型 说明
encryptedData String 包括敏感数据在内的完整用户信息的加密数据,详细见加密数据解密算法
iv String 加密算法的初始向量,详细见加密数据解密算法