相关疑难解决方法(0)

Cache-Control有什么区别:max-age = 0和no-cache?

标题Cache-Control: max-age=0意味着内容被认为是陈旧的(并且必须立即重新获取),这实际上与之相同Cache-Control: no-cache.

caching http http-headers

616
推荐指数
8
解决办法
41万
查看次数

谷歌浏览器不尊重缓存控制中的最大年龄

我有一个 React 应用程序,其中我正在向后端 API 执行提取请求。\n我正在尝试在 UI 端实现大量请求的缓存。

\n\n

我能够在 Mozilla Firefox 中成功完成此操作,并且运行得非常好。\n但是 chrome 给我带来了困难。\n这是我试图实现的代码片段 -

\n\n
        fetch(URL, {\n            signal: this.abortController.signal,\n            cache: "default",\n            headers: {\n                "Cache-Control": "max-age=120"\n            }\n        })\n            .then(response => return response.json())\n            .catch(error => {\n                if (error.name === "AbortError") {\n                    return;\n                }\n                this.setError(error);\n            });\n
Run Code Online (Sandbox Code Playgroud)\n\n

我正在跟踪检查缓存的过程-

\n\n
    \n
  1. 首先打开正在执行获取请求的选项卡。
  2. \n
  3. 将选项卡更改为不同的选项卡。
  4. \n
  5. 在超时期限(120 秒)内返回步骤 1 中提到的选项卡
  6. \n
\n\n

在检查 Firefox 的网络选项卡时,我可以看到“已传输”为“已缓存”,并且页面加载和一切都按预期工作有显着改进。

\n\n

然而,在 Chrome 中,我仍然可以看到“大小”为“3.9 KB”,时间为“毫秒”。

\n\n

我尝试了 - Chrome 是否忽略 Cache-Control: max-age?中提到的步骤 没有任何成功。

\n\n

我还发现 - https://www.mnot.net/blog/2017/03/16/browser-caching …

javascript google-chrome fetch browser-cache reactjs

5
推荐指数
1
解决办法
3746
查看次数