在做项目时,我们常常会对登陆用户的合法性进行判断,接下来我就给大家介绍几中常见的身份验证的方法。
最先是session校验,这块一般是初学者最先做的一种校验方式,同时也是比较消耗服务器内存的一种方式。
✒️流程:
客户端发送登陆者的用户名以及密码,服务器接受到用户名和密码。
服务器接受到转过来的用户名和密码后,先逻辑判断,假如通过则生成一个session和一个cookie,同时cookie里有一个sessionId,其值为生成的session的唯一身份编号,目的就是下次可以通过cookie直接找到session。
服务器将cookie返回给客户端保存。
客户端拿到cookie后,以后每次发起请求时都需要携带cookie发起请求。
服务器接受到cookie后,先去根据cookie的sessinId找在服务器保存的session,然后进行判断。若判断身份没问题,则返回对应数据,否则返回错误响应。

token校验就更高阶一点了,一般在做vue项目的时候,会配合token或者JWT做校验。而且token校验不用保存在服务器上,这样就大大减轻了服务器的内存消耗。
✒️流程:

Json web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准((RFC 7519).该token被设计为紧凑且安全的,特别适用于分布式站点的单点登录(SSO)场景。
在数据传输过程中,还可以完成数据的加密,签名相关处理。


拓展
cookie我们一般不用它做验证登陆,它的安全系数不高,而且可以直接js直接获取内容(尽管可以设置
httponly但我们也还是不要用它)。