- (客户端)调用接口wx.login()获取登录凭证(code)。
wx.login({
success (res) {
if (res.code) {
wx.request({
url: 'https://test.com/onLogin',
data: {
code: res.code
}
})
} else {
console.log('登录失败!' + res.errMsg)
}
}
})
- 因为需要用户主动触发才能发起获取手机号接口,所以该功能不由 API 来调用,需用 button 组件的点击来触发。
<button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber"></button>
Page({
getPhoneNumber (e) {
console.log(e.detail.errMsg)
console.log(e.detail.iv)
console.log(e.detail.encryptedData)
}
})
- (客户端)将获取的code,iv,encryptedData参数发送到服务端.
- (服务端 php)服务器发送code到微信服务器获取openid(用户唯一标识)和session_key(会话密钥),最后将encryptedData、iv、session_key通过解密获取到用户手机号
解密需要 引用的文件官网可以下载
https://developers.weixi