google-chrome - 为什么我得到 200(来自磁盘缓存)而不是 304 Not Modified?
问题描述
我正在通过 HTTP 从 Chrome 请求一个 css 文件(版本 93.0.4577.63(官方构建)(64 位))。初始请求如下所示:
如您所见,它Cache-Control: no-cache
在请求中。
这是否意味着它首先必须与服务器检查其 css 文件的版本是否是最新的?
在这种情况下,它应该304 Not Modified
在下一个请求中得到一个(假设文件没有被修改)?
这是我刷新页面时的请求/响应:
为什么我得到 a200 (from disk cache)
而不是 a 304 Not Modified
?
问题是该网站的一些用户正在获取过期版本的 css 文件。
我怀疑这是因为缓存版本在被服务器重新验证之前被返回,这是我认为no-cache
应该做的。
更新:
我没有选中禁用缓存按钮
解决方案
您是否在 devtools 中禁用了缓存?
在 Firefox 中,只有当缓存没有被禁用时,我才会得到 304。
推荐阅读
- android - 谷歌日历中添加的事件不显示在 Android Pie 中?
- jquery - 如何在同一元素上链接 html() 和 text()
- ssl - 带有证书、私钥和密码短语的 TLS
- npm - node-sass 安装脚本忽略 .npmrc 设置
- javascript - 如何在 vue 中同时上传图片和表单内容?
- php - 多个 php 版本 - 如何在 Wordpress 设置中更新 php 版本
- alexa - Alexa 位置权限请求不起作用
- javascript - 附加值未获取
- java - Composite 和 ScrolledComposite 占用了不必要的空间
- java - Talend Build Job - 编译问题