网页登录《记住我》功能实现原理
通常,在使用web系统时,无论是MVC,还是前后端分离的方式,都不可避免会使用到登录的功能。
为了提高用户体验,简化用户登录的操作,我们会加入一个《记住我》的功能,记录当前用户的登录状态,当下次再次进入系统时,无需进行登录。
那么这个功能的原理究竟是怎样的?
我们一起来理一下。
首先,这个功能的使用场景是登录,载体是浏览器,所以我们可以利用cookie
的方式去处理。
流程
1、登录 ->
2、服务器进行校验 ->
3、保存token到数据库,返回前端浏览器登录token
->
4、前端保存token
到cookie
->
5、下次请求时,后端读取cookie
中的token
, 并校验,通过即可快速登录
问题
1、浏览器禁用cookie
怎么办?
在基于cookie
的前提下,禁用了cookie
则无法正常使用功能。 当然session
有另外的解决方式,这个另说啦。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 指尖改变世界!