身份认证
2021年12月18日大约 1 分钟
身份认证
cookie
cookie 是存储在用户浏览器中一段不超过 4kb 的字符串
cookie 由一个名称(name)和一个值(value)和其他的用于控制 cookie 的有效期,安全性,适用范围的可选属性组成
特点
- 自动发送
- 域名独立
- 过期时限
- 4kb 限制
流程
第一次请求服务器时,服务器通过响应头的形式,向客户端发送一个身份认证的 cookie ,客户端会自动保存 cookie 在浏览器中
当客户端再次请求服务器时,浏览器会自动将 cookie 以响应头的形式发送给服务器
cookie 可以通过 API 获取和修改
服务器不会验证 cookie 是否有效
不要用 cookie 存储重要且隐私的信息
session
工作原理
服务器会验证 cookie 数据,确定 cookie 有效
当服务器访问量过大时,会导致服务器压力过大
token
工作原理
组成部分
- Header(头部)
- Payload(有效荷载)
- Signature(签名)
由 '.' 隔开
PayLoad 才是用户信息加密生成的字符串
Header、Signature 是为了安全性
客户端向服务器发送请求时,推荐把 jwt 放在 http 请求头中的 authorization 字段中
token 开头必须加上 Bearer,不然无法解析