Bootstrap

搞测试的,Cookie、Session、Token、JWT 傻傻分不清楚可不行_jwt使用cookie了吗

img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化的资料的朋友,可以戳这里获取

用户第一次请求服务器的时候,服务器根据用户提交的相关信息,创建对应的 session

服务器响应客户端的请求,并返回唯一标识信息 sessionid 给浏览器

浏览器把返回的 sessionid 存储到 cookie 中,同时 cookie 记录次 sessionid 属于哪个域名

当用户第二次访问服务器的时候,请求自动判断此域名下是否存在 cookie 信息,如果存在就将 cookie 信息发送给服务端,服务端会从 cookie 中获取 sessionid,再根据 sessionid 查找对应的 session 信息,如果找到 session 证明用户已经登录,可以执行后面操作,如果没有找到,说明用户没有登录或者失败。

cookie 和 session 的区别

安全性:session 比 cookie 安全,session 是存储在服务器端,cookie 是存储在客户端

存储值的类型不同:cookie 只支持存字符串数据,设置为其它类型的数据,需要将其转换成字符串,session 可以存任意数据类型。

有效期不同:cookie 可设置为长时间保持,session 的失效时间比较短,客户端关闭就会失效

存储大小不同:单个 cookie 保持的数据不能超过 4KB,Session 存储数据高于 cookie,当访问量过多,会占用更多的服务器资源。

什么是 Token(令牌)

访问接口(API)时所需要的资源凭证,比如订单接口需要带上登录返回的 token 值,才能访问订单接口数据

常见的 token 组成:UID(用户唯一的身份标识)、time(当前时间的时间戳)、sign(签名,token+ 请求数据进行几次 md5 之后的值)

token 的特点:

服务端无状态化、可扩展性好

支持移动端设备

安全性好

支持跨程序调用

token 的身份验证流程:

①、客户端使用用户名和密码,请求登录

②、服务端收到请求,验证用户名和密码

③、验证成功之后,服务端返回一个 token,并把这个 token 发送给客户端

④、客户端收到 token 之后,会把它存储起来,放入 cookie 里面

⑤、客户端每次想服务器请求资源的时候,都需要带着这个 token

⑥、服务端收到请求的时候,验证客户端请求里面带着的 token,如果验证成功,就向客户端返回请求的数据

每一次请求都需要携带 token,需要把 token 放到 HTTP 的请求头里面

基于 token 的用户认证,服务端不用存放 token 数据。

Token 和 session 的区别

Session 是一种记录服务器和客户端会话状态的机制,使服务端有状态化,可以记录会话信息。

token 是一种令牌,访问接口(API)时需要的凭证,也像古代进入到城里需要腰牌一样。token 使服务器无状态化,不会存储会话信息。

token 的安全性要好于 session,每次请求都有签名,也就会出现每次的 token 都会变化,也可以防止一定的攻击、

什么是 JWT

JSON Web Token(简称 JWT)是目前最流行的跨越认证解决方案。

是一种认证授权机制

JMT 是在网络应用环境之间传递声明,而执行的一种基于 JSON 的开发标准

JWT 的认证流程:

客户端将 token 保存到本地(通常使用 localstorge)

当用户访问一个受保护的路由或者资源的时候,需要请求头的 Authorization 字段中使用 Bearer 模式添加 JWT

服务端的保护路由将会检查请求头 Authorization 中的 JWT 信息,如果合法,则允许用户的行为

JWT 内部保护了一些会话信息,减少了需要查询数据库的需要

JWT 并不使用 cookie,可以使用任何域名提供你的 API 服务,不需要担心跨域的问题

img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化的资料的朋友,可以戳这里获取

多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**

需要这份系统化的资料的朋友,可以戳这里获取

;