Cookie、Session 和 Token 有什么区别?
先自己想一想,再看参考要点
参考要点
- Cookie 是保存在浏览器、每次请求自动携带的小块数据(约 4 KB)
- Session 把状态存在服务器(如 Redis),Cookie 只带 Session ID,删除 Session 就能让用户下线,集群要共享
- Token(如 JWT)把状态放在带签名的令牌中,服务无需保存会话就能验证,但过期前无法主动失效,常用短期访问令牌加刷新令牌,需要立即失效时把令牌 ID 放入 Redis 黑名单,这又回到了在服务器保存状态