根据spec,fetch api有各种缓存模式。 ("默认"," no-store","重新加载"," no-cache"," force-cache&#34 ;和" only-if-cached")但是,它并不清楚每种模式的用途或浏览器支持的状态。
答案 0 :(得分:8)
您可以在此处查看polyfill的文档:https://fetch.spec.whatwg.org/
它解释了每个值意味着什么
"default"
Fetch将在前往网络的途中检查HTTP缓存。如果有新的响应,它将被使用。如果存在过时响应,则将创建条件请求,否则将创建正常请求。然后它使用响应更新HTTP缓存。 [HTTP]
"no-store"
Fetch的行为就像根本没有HTTP缓存一样。
"reload"
Fetch的行为就像去往网络的路上没有HTTP缓存一样。因此,它会创建一个普通请求并使用响应更新HTTP缓存。
"no-cache"
如果HTTP缓存中存在响应,则Fetch会创建条件请求,否则会生成正常请求。然后它使用响应更新HTTP缓存。
"force-cache"
Fetch使用匹配请求的HTTP缓存中的任何响应,而不关注过时性。如果没有响应,则会创建正常请求,并使用响应更新HTTP缓存。
答案 1 :(得分:1)
对于那些与HTTP令牌名称匹配的用户,它们具有相似的语义。不幸的是,现在你必须通过规范的算法来理解大多数这些值的含义。此外,目前还不清楚其中有多少会被标准化,因为它们可能存在一些安全问题,因此我最终可能会删除此功能的API。