Toekn登录身份验证过程
一、 token身份验证
基于令牌的认证是无状态的[*],所以我们不能在服务器中存储信息,因为每次客户发起认证请求时,服务器都需要创建一条记录来存储信息,当请求越来越多时,内存开销会不断增加,会导致服务器压力过大。
二、Token的身份验证的过程流程如下
用户通过用户名或密码发送请求。
服务器接收请求并验证它。
验证成功后,向客户端返回签名令牌。
客户端存储令牌,然后在每次访问服务器时携带令牌到服务器。
服务器验证令牌,验证成功后返回请求数据,如果验证失败则返回错误代码。
[*] :表示协议没有交互场景的内存。
当eg:点击一个纯html网页,请求获取服务器的html文件资源时,每个http请求都会返回相同的信息,因为这不是交互的,每个请求都是相互独立的。第一个请求和第二个请求之间没有顺序,返回哪个进行处理,结果是同一个资源页,因为这个场景是非交互的,不管是谁请求这个地址,服务器总是返回同一个响应。
在非互动场景下,当然不会有大问题。但是对于涉及动态交互的场景,就很尴尬了。什么是互动来来去去?对于两个相同的接口,不同的人可能基于请求第一接口的结果而不同地请求第二接口。
附注:
欢迎多多指教
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/139152.html