小程序可以通过微信官方提供的登录能力方便地获取微信提供的用户身份标识,快速建立小程序内的用户体系。
登录整体流程如下图所示,如果是常规的登录,按照这个流程就很完善了。
但是我目前做的项目的账号数据是预置的,所以在微信登录成功后,需要同时验证绑定状态,绑定成功后,才允许用户进行下一步的操作。
具体判断流程如下:
1.判断绑定状态
首先调用登录API wx.login() 获得 code,发送给开发服务器后端。
后端根据 code 换取 openId,之后以 openId 为关键词查询库表信息,判断绑定状态并返回给前端进行处理。
// 登录
wx.login({
success: res => {
this.globalData.isLogin = true;
// 发送 res.code 到后台换取 openId
// 这里对请求操作进行封装,内部使用 wx.setStorageSync 实现了 token 的存储
loginModel.login(res.code).then(response => {
const result = response.data;
// 对不同绑定状态的处理,代码见下面的 “步骤2” 和 “步骤3”
...
})
}