微信小程序登录流程
微信登陆流程
微信多个载体(APP微信授权,微信公众号授权登陆),openId
是不一致的,但是unionId
是一致的
所以在走流程时,
-
先判断unionId在数据库中存在不存在
- 存在,拿unionId去数据库换token,获取用户信息,更新openId,---首页
- 不存在,在启动页,让用户点击授权登陆,获取用户信息,再进行手机号授权
- 微信授权手机号 ---首页
- 登陆注册手机号 ---首页
-
代码方面:
-
进入启动页
wx.login();//获取code,code只能获取一次
-
将
code
传给后端,换取sessionKey
,openId
,unionId
-
点击微信授权按钮,获取用户信息
getUserInfo
会获取用户信息,bindgetuserinfo
会弹出框,让用户点击授权,里面的参数也会有用户信息<button open-type="getUserInfo" bindgetuserinfo="bindGetUserInfo">微信授权登录</button>
-
点击微信手机号授权
getPhoneNumber
会获取加密过后的手机号,传给后端,获取解密后的手机号<button form-type="submit" open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber">微信授权获取手机号</button>
-