您的位置 首页 java

cookie、session、token、jwt认证方式这下全有了

cookie

session

为什么要有session的出现? 答:是由于网络中http协议造成的,因为http本身是无状态协议,这样,无法确定你的本次请求和上次请求是不是你发送的。如果要进行类似论坛登陆相关的操作,就实现不了了。session生成方式? 答:浏览器第一次访问服务器,服务器会创建一个session,然后同时为该session生成一个唯一的会话的key,也就是sessionid,然后,将sessionid及对应的session分别作为key和value保存到 缓存 中,也可以持久化到数据库中,然后服务器再把sessionid,以cookie的形式发送给客户端。这样浏览器下次再访问时,会直接带着cookie中的sessionid。然后服务器根据sessionid找到对应的session进行匹配; 还有一种是浏览器禁用了cookie或不支持cookie,这种可以通过URL重写的方式发到服务器;

token

访问资源的令牌 验证流程: 1.把用户的用户名和密码发到后端 2.后端进行校验,校验成功会生成token, 把token发送给客户端 3.客户端自己保存token, 再次请求就要在Http协议的请求头中带着token去访问服务端,和在服务端保存的token信息进行比对校验。

JWT

java web token 的缩写,可使用 restful 接口定义,也可以用在web中 段落引用组成: header 在header中声明一些信息 payload、

cookie、session、token、jwt认证方式这下全有了

签证 验证流程: 1.段落引用在头部信息中声明加密算法和常量, 然后把header使用 json 转化为 字符串 2.段落引用在载荷中声明用户信息,同时还有一些其他的内容;再次使用json 把载荷部分进行转化,转化为字符串 3.使用在header中声明的加密算法和每个项目随机生成的secret来进行加密, 把第一步分字符串和第二部分的字符串进行加密, 生成新的字符串。词字符串是独一无二的。 4.解密的时候,只要客户端带着JWT来发起请求,服务端就直接使用secret进行解密。

特点: 1.三部分组成,每一部分都进行字符串的转化 2.解密的时候没有使用数据库,仅仅使用的是secret进行解密。 3.JWT的secret不能泄密

文章来源:智云一二三科技

文章标题:cookie、session、token、jwt认证方式这下全有了

文章地址:https://www.zhihuclub.com/190661.shtml

关于作者: 智云科技

热门文章

网站地图