获取缓存响应 - 无缓存标头未按预期工作

Posted

技术标签:

【中文标题】获取缓存响应 - 无缓存标头未按预期工作【英文标题】:Fetch caching response - no-cache headers not working as expected 【发布时间】:2017-12-29 05:52:15 【问题描述】:

我一直在为 freecodecamp 做random quote machine 项目,但我似乎无法停止缓存 api 的响应。

我尝试了各种答案:

fetch(), how do you make a non-cached request? https://forum.freecodecamp.org/t/apis-and-the-random-quote-machine-not-even-sure-what-to-ask/65982/13

我以为我曾经有过它:

fetch(this.url, cache: 'no-cache')
    .then(res => res.json())

...但我只是在开发者工具中禁用了缓存。

请帮忙。 :-D。

这是我一直试图让它发挥作用的地方: https://codepen.io/JonathanDWood/pen/gRNNKx

【问题讨论】:

【参考方案1】:

我已经设法通过将Date.now() 附加到网址来修复它。我真的不喜欢它作为一个永久的解决方案,因为它不能解决底层缓存问题,但它可以工作。

fetch(this.url+ Date.now(), cache: 'no-store')
    .then(res => res.json())

【讨论】:

以上是关于获取缓存响应 - 无缓存标头未按预期工作的主要内容,如果未能解决你的问题,请参考以下文章

在 apollo-react 问题中默认获取更多分页或仅网络策略

请求标头与响应标头

图像的缓存标头始终为“无缓存”和“过期:-1”

okhttp 客户端何时缓存服务器响应?

HTTP 缓存

从 Android 联系人数据库获取联系人 ID 未按预期工作