微信小程序获取手机号流程以及用到的API
微信小程序获取手机号流程以及用到的API和代码示例如下:
获取手机号流程:
- 用户点击授权登录按钮,小程序会提示用户授权并获取用户同意。
- 获取到用户的同意后,小程序会将用户的临时登录凭证code返回给开发者服务器。
- 开发者服务器通过发送code及AppID和AppSecret调用微信接口服务获取session_key和openid等信息。
- 开发者服务器将session_key返回给小程序,小程序使用该session_key调用
wx.login
接口获取到用户授权登录后的code,再次发送给开发者服务器。 - 开发者服务器将code发送给微信接口服务,获取到用户的加密数据,然后结合session_key以及app_id进行解密获取手机号。
用到的API:
wx.login
:用于获取临时登录凭证code。wx.getUserInfo
:用于获取用户信息。
代码示例:
在页面的JS文件中定义一个函数来获取用户手机号:
// 在页面的JS文件中定义一个函数来获取用户手机号
function getPhoneNumber() {
// 调用微信接口获取手机号
wx.login({
success: function(res) {
// 获取到登录凭证code后,发送给开发者服务器
wx.request({
url: 'https://example.com/api/getUserInfo', // 开发者服务器接口地址
method: 'POST',
data: {
code: res.code // 登录凭证code
},
success: function(res) {
// 成功回调函数,res中包含用户手机号信息
console.log(res.data); // 这里假设返回的数据格式为JSON,需要根据实际情况调整数据处理方式
},
fail: function(err) {
// 失败回调函数,err为错误信息
console.log(err);
}
});
},
fail: function(err) {
// 失败回调函数,err为错误信息
console.log(err);
}
});
}
在页面的WXML文件中设置授权登录按钮和调用getPhoneNumber函数:
<button bindtap="getPhoneNumber" open-type="getPhoneNumber">获取手机号</button>