登录状态保存
HTTP请求是无状态的
-
cooikie+ 举例:例如满10+1 给你卡片,卡片上有商家标识
- 保存在客户端
- 数据量小(很多站点对cookie的大小和数量都进行了限制)
- 不安全(别人可以分析存放在本地的COOKIE并进行COOKIE欺骗,也可能被拦截)
-
session 举例例如卡片:获取你的信息保存到商家
- 服务器端
- 安全
- session可以依赖cookie
- 访问量增多,占用服务器资源,如果服务器挂了,所有保存的信息都没了
-
token
- 服务器不存用户状态,定义通用算法
- 客户端第一次登录之后,服务器会生成一个token,返回给客户端
- 后续所有请求都会带着token
- 服务器根据算法校验token的合法性
-
jwt
查库和不查库,token会先校验在查询数据库获取数据
jwt不查库,
因为在给客户端返回token的时候就将用户信息加密到token里面了
客户端再次将token携带给服务端时候,服务端直接解密,拿到用户信息,直接返回,不需要查库