超超哥AI云计算超哥讲AI 出品

社群入口

AI 超哥 Codex 副业群

扫码加入群聊,一起交流 AI、Codex 与副业实践。

原图注明二维码于10月20日前有效;若提示过期或无法入群,请等待更新二维码。

AI 超哥 Codex 副业群入群二维码在新窗口打开原图

HTTP 缓存与条件请求

HTTP、Web 与浏览器原理#Python全栈#第九阶段#HTTP、Web 与浏览器原理#HTTP 缓存与条件请求约 765 字 · 2 分钟阅读
追问显示
点击任意追问卡片可收起 / 展开

浏览器私有缓存与 CDN 等共享缓存有什么区别?

追问 用户资料与公开静态图片应怎样区别处理?为什么不能只讨论“有没有缓存”而忽略缓存位置?

缓存响应的鲜度与重新验证分别是什么?

追问 缓存尚新鲜时和需要验证时,是否都会向源站发送请求?如何从浏览器网络记录判断?

Cache-Control 的 max-age、s-maxage 与 Expires 怎样表达缓存有效期?

追问 私有缓存和共享缓存如何选择适用指令?Date、Age 与时间经过怎样影响实际剩余鲜度?

no-cache 与 no-store 有什么区别?

追问 哪个允许保存后在复用前验证,哪个要求不存储?为什么修改为 no-store 不应被当作清除所有历史缓存的手段?

private 与 public 怎样表达共享缓存约束?

追问 带用户身份的响应需要检查哪些额外条件?为什么状态码、Authorization 和缓存键也会影响能否缓存?

ETag 与 Last-Modified 各怎样标识已有表示?

追问 内容指纹与修改时间有何差别?强 ETag 与弱 ETag 在比较能力上有什么不同?

If-None-Match 与 If-Modified-Since 如何触发条件请求?

追问 两者同时存在时如何判断优先关系?服务器返回 304 后,客户端怎样更新并使用已有缓存?

Vary 为什么会影响缓存选择?

追问 语言、压缩编码或按 Origin 变化的响应怎样区分?只用 URL 作为缓存键可能导致什么错配?

为什么带内容哈希的静态资源与 HTML 首页常采用不同缓存策略?

追问 长期缓存资源、及时更新入口与保留旧资源之间如何配合,避免新旧版本混用?

“清除浏览器缓存后正常”说明了什么,又不能证明什么?

追问 浏览器 HTTP 缓存、Service Worker 与 CDN 缓存如何分别核对?强制刷新是否能替代正确的版本与缓存设计?

核对资料: RFC 9111:HTTP 缓存。