200 ok (from memory cache) 或 200 ok (from disk cache) 表示缓存命中,未发起网络请求;304 not modified 表示协商缓存命中,请求发往服务器但资源未更新;response headers 中的 cache-control、expires、last-modified、etag 等字段可进一步判断缓存机制类型。

在 Chrome DevTools 的 Network 面板中,可以通过响应头(Response Headers)和状态码快速判断资源是否命中浏览器缓存。
看 Status 列的数值和文字说明
Status 列显示 200 OK (from memory cache) 或 200 OK (from disk cache),就代表该请求被缓存命中,没有真正发到服务器。
- from memory cache:资源从内存缓存中读取,速度最快,常见于刚打开页面或短时间内重复访问的资源
- from disk cache:资源从磁盘缓存加载,适合生命周期较长、体积较大的资源(如图片、CSS 文件)
- 如果看到 304 Not Modified,说明请求发送到了服务器,但服务器确认资源未更新,返回了空响应体,属于协商缓存命中
检查 Response Headers 中的关键字段
点击某个请求 → 查看右侧 Headers 标签页 → 展开 Response Headers:
下载 Comet AI 浏览器,体验由 Perplexity AI 驱动的革命性上网方式。内置 AI 助手可实时总结网页、跨标签页对比信息、自动执行任务。告别繁琐操作,让 AI 成为你的浏览副驾,大幅提升研究与工作效率。支持 Windows、macOS、Android 和 iOS。
- 存在 Cache-Control 或 Expires:表示启用了强缓存机制;若当前时间在有效期内,浏览器会直接用缓存
- 存在 Last-Modified 或 ETag:说明服务端支持协商缓存;后续请求会带
If-Modified-Since或If-None-Match,服务器据此返回 304 - 若响应头中没有缓存相关字段,且 Status 是 200(无括号说明),大概率是未命中缓存,每次都会重新下载
排除干扰:禁用缓存时的状态表现
Network 面板顶部有个 Disable cache 复选框(勾选后变灰即启用)。如果它被勾选,所有请求都会绕过本地缓存,强制走网络 —— 此时看不到 from memory/disk cache,也容易误判缓存行为。
- 测试真实缓存效果前,请确保 取消勾选 Disable cache
- 刷新页面时可按
Cmd+R(Mac)或Ctrl+R(Windows),避免触发“强制刷新”(Cmd+Shift+R会清空内存缓存并忽略所有缓存指令)
验证缓存是否生效的小技巧
想快速确认某资源是否真的被缓存,可以这样做:
- 首次加载页面,记录目标资源的 Size 和 Time(比如 JS 文件显示 “124 KB”、“18 ms”)
- 普通刷新(不强制),再看同一资源:Size 显示 (memory cache) 或 (disk cache),Time 接近 0 ms,说明命中
- 修改资源 URL(如加版本号
app.js?v=2),再刷新 —— 此时必然不命中,用于对比基准行为
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南










