获取openId和unionId
第一步:
小程序中使用wx.login获取code。(注意:此步骤无弹框弹出,无需用户点击可获取到code)
第二步:
服务端根据code和appid和appsecret通过auth.code2Session 获取openid和unionid
获取用户信息
获取头像,昵称等信息
1.wx.getUserInfo
2.wx.getUserProfile
注意:上边两个api只能在基础库 2.27.1 以下版本使用,除此之外无法使用,不要被现在的众多文章所误导
不能返回用户正确的信息,所有返回的都是灰色头像和名称为“微信用户”假信息,不可用.具体可看:文档
解决办法:
获取头像只能使用button组件,open-type=“chooseAvatar”
获取性别只能使用input组件,type=“nickname”
获取手机号码
第一步:
小程序使用button,open-type为getPhoneNumber,获取code(此code和wx.login获取到的code不是同一个,不能混用)
第二步:
服务端根据code,使用
https://api.weixin.qq.com/wxa/business/getuserphonenumber?access_token=ACCESS_TOKEN,获取手机号码,具体可看:文档
使用微信登录的逻辑如下:
1.使用wx.login获取code
2.将code发送至服务器用于获取openid,
当账号未登陆过时,需要将账号创建至服务器数据库
3.返回token或session信息
注意:上述过程在小程序中是没有授权弹框的。
如果觉得需要进行用户点击等操作有如下方案:
首次登录时
在wx.login之前先获取电话号码,因为获取电话号码需要弹框并让用户授权。并在服务器将openid和电话号码绑定
非首次登录时
直接用获取电话号码的弹框方式进行登录
中间过程的可看相关文档
有疑惑可评论区发表或者私信