Q1主动回忆难度 2
1/7
浏览器与网络 · 缓存与存储
记忆强度
强缓存与协商缓存怎么配合,四种客户端存储怎么选,cookie 和 session 的分工。
浏览器与网络 · 缓存与存储
session 与 cookie 分别是什么概念,二者在会话状态实现上有什么关系?session 是会话状态的抽象,cookie 是定义在 HTTP header 中、可实现该状态的字段。
常见实现由 cookie 发送 sessionID,并结合后端存储维护更高级的会话状态。
浏览器先检查强缓存;未命中再请求服务器协商,协商命中返回 304,否则返回最新资源。
no-cache 要求先协商再复用缓存,no-store 禁止缓存并使每次请求都下载完整资源。
前者比较修改时间但有精度和准度问题;后者比较内容哈希,更精确却有计算成本与误差。
cookie 容量最小且随请求发送;其余方案容量更大、不随请求发送,生命周期也各不相同。
设置 http-only 可减少 XSS,设置 same-site 可减少 CSRF。