张春 发表于 2025-1-1 20:10:29

一次捋清uniapp小程序微信快速登岸、获取手机号验证、获取用户信息【前端】

首先要知道,微信登录和获取手机号、获取用户信息是相互独立的过程,接下来分开讲解这三个东西,内容很干,只用文字形貌,认真看、跟着做就行,没有花里胡哨
uniapp微信登录流程


[*]前端利用uni.login方法获取code(用户的登录凭据)发送给后端
[*]后端利用这个code哀求code2Session这个接口: https://developers.weixin.qq.com/miniprogram/dev/OpenApiDoc/user-login/code2Session.html
获取到openid等信息
[*]后端根据openid判断用户是否已经注册,如果已经注册则直接登录,否则可能需要额外的注册流程
[*]最后,后端返回状态给前端,前端进行存储即可
获取手机号


[*]前端uniapp的button组件,设置open-type属性为getPhoneNumber,在回调函数@getphonenumber中可以拿到code(用于变更手机号的临时凭据)、encryptedData(加密数据,包含手机号)、iv(加密算法的初始向量)等数据发送给后端,其实在最新的获取用户手机号的方法中,encryptedData和iv已经不需要了,传不传都无所谓
[*]后端先通过这个接口:
https://developers.weixin.qq.com/miniprogram/dev/OpenApiDoc/mp-access-token/getAccessToken.html
获取access_token然后结合这个code哀求getPhoneNumber这个接口:https://developers.weixin.qq.com/miniprogram/dev/OpenApiDoc/user-info/phone-number/getPhoneNumber.html#%E8%B0%83%E7%94%A8%E6%96%B9%E5%BC%8F
就可以获取用户手机号
获取用户信息


[*]前端利用uni.getUserInfo接口:https://uniapp.dcloud.net.cn/api/plugins/login.html#getuserinfo
直接就能获取到用户信息

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 一次捋清uniapp小程序微信快速登岸、获取手机号验证、获取用户信息【前端】