主要有以下的几个步骤:
- 生成一个唯一值,返回给前端页面用来生成唯一值;
- 前端轮询接口,直到返回二维码过期或者扫码成功;
- app端进行扫码,并对二维码的值进行判断;
- 二维码值错误,返回错误信息;
- 二维码正确,让用户选择是否登录,请求后端接口,写入数据库相应表(code表),状态标记为已扫码(状态有已扫码,登录,取消);
- 当用户选择登录,状态标记为登录,取消则标记为取消
- 前端轮询,根据不同的返回状态显示不同的提示信息,和app端同步,当用户选择登录的时候控制页面跳转,取消的时候刷新二维码开始新的轮询