一、验证码
- 后端生成一个表达式
1+1=2 1+1=?@2
1+1=?转成图片传到前端进行展示
图片是由后端通过流的形式传入到客户端
前端通过一个反向代理访问后端解决了跨域问题
2存入redis
然后把输入数据和2进行一个对比,如果输入正确就继续验证用户名和密码,输入错误就不验证用户名和密码。
后台存一个uuid作为redis的key 相当于1+1=?
value为准确值与客户端用户输入的值做比对 相当于2。
总结:后台出好提,前端来作答
二、登录
- 校验验证码
校验成功就继续校验用户名和密码是否正确。校验失败则抛出一个异常。 提示用户验证码输入错误 - 校验用户名和密码
在登录页面输入用户名和密码,校验失败抛出异常提示用户,用户名或密码输入错误。校验成功就生成token返回给前端可以进行后续操作。
token有三部分组成 header payload Signature通过 . 拼接而成的。
每一次登录都要验证token
调用后台接口进行验证
通过验证之后,根据后台的响应状态跳到项目主页