- 大部分微信小程序开发者都会有这样的需求:获取小程序用户的手机号码。
- 但是,因为小程序用户的手机号码属于重要信息,为了安全,所以需要如下一系列较为复杂的方法和步骤。
- 我前期主要通过小程序云的方法获取用户手机号码,后面因为微信政策变更,小程序云不再提供免费版本,最低每月也要收费19元。
- 所以,我才转用方法二和方法三。否则方法一小程序云的方法是最简单的。
微信小程序开发笔记 进阶篇④——getPhoneNumber 获取用户手机号码(小程序云)
微信小程序开发笔记 进阶篇⑤——getPhoneNumber 获取用户手机号码(基础库 2.21.2 之前)
微信小程序开发笔记 进阶篇⑥——getPhoneNumber 获取用户手机号码(基础库 2.21.2 之后)

app.jsonLaunch: function (opts) {const accountInfo = wx.getAccountInfoSync();this.globalData.appId = accountInfo.miniProgram.appIdconsole.log('App Launch', opts, accountInfo)if (!wx.cloud) {console.error('请使用 2.2.3 或以上的基础库以使用云能力')} else {wx.cloud.init({env: config.envId,traceUser: true,})}
},
bindgetphonenumber="getPhoneNumber"按钮的回调函数getPhoneNumber(e) {wx.cloud.callFunction({name: 'getPhoneNumber',data: {cloudID: e.detail.cloudID},success: function (res) {console.log("getPhoneNumber", res.result)_this.setData({mobile: res.result.list[0].data.phoneNumber})},fail: console.error})
},

index.js// 云函数入口文件
const cloud = require('wx-server-sdk')cloud.init()// 云函数入口函数
exports.main = async (event, context) => {console.log("cloudID: ",event.cloudID)return await cloud.getOpenData({list:[event.cloudID],})
}
package.json{"name": "wxContext","version": "1.0.0","description": "","main": "index.js","scripts": {"test": "echo \"Error: no test specified\" && exit 1"},"author": "","license": "ISC","dependencies": {"wx-server-sdk": "latest"}
}
觉得好,就一键三连呗(点赞+收藏+关注)