获取API缓存模式

Dan*_*err 9 javascript caching fetch-api

根据规范,fetch api有各种缓存模式.("default","no-store","reload","no-cache","force-cache"和"only-if-cached")但是,不清楚每种模式的用途,或者浏览器支持的状态.

ale*_*ngn 10

您可以在此处查看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缓存.


Ann*_*nne 1

对于那些匹配 HTTP 令牌名称的名称,它们旨在具有相似的语义。不幸的是,现在您必须仔细阅读规范的算法才能理解大多数这些值的含义。另外,目前还不清楚其中有多少将被标准化,因为它们可能存在一些安全问题,所以我最终可能会删除此功能的 API。