cookie
存储在客户端
第一次登陆后,服务器给浏览器一些数据作为用户凭证,作为再次请求数据的同行凭证。
分类
1、会话cookie:
生命周期和浏览器一致。
2、持久cookie:
存放在客户端硬盘上。
session
存储在服务器
session和cookie的结合
1、服务端存储session,浏览器存储session_id,交互中通过id在服务端查找session的相关信息。
该模式:server side session
2、将session加密存储到cookie中
该模式:client side session
token
由uid+time+sign[+固定参数]
Token认证方式类似临时证书,是一种服务端无状态的认证方式(服务端不会保存身份认证的相关数据)
token特点:
可以抵抗CSRF攻击
原因:
浏览器不会自动在headers中添加用户的token信息,攻击者也无法访问用户的token,提交的表单无法通过服务器过滤。
token类似令牌,无状态,用户信息被加密到token中,服务器可以收到token后解密认证
补充:关于浏览器缓存的分类:
1、强缓存:
直接在本地缓存中取资源,不会和服务器通信,http返回状态码200。
由headers中的Expires和cache-control(优先级较高)决定的
2、协商缓存:
由服务器决定是否在本地缓存
由两组headers值:
i. Last-Modified / If – Modified – Since
ii. Etag / If – None – Match(优先级较高)