这篇翻译不完整。请帮忙从英语翻译这篇文章

这是一个实验中的功能
此功能某些浏览器尚在开发中,请参考浏览器兼容性表格以得到在不同浏览器中适合使用的前缀。由于该功能对应的标准文档可能被重新修订,所以在未来版本的浏览器中该功能的语法和行为可能随之改变。

Cache 接口的 matchAll() 方法返回一个 Promise ,其 resolve 为 Cache 对象中所有匹配请求的数组。

语法

cache.matchAll(request,{options}).then(function(response) {
  //do something with the response array
});

返回值

一个 Promise,resolve为 Cache 对象中所有匹配请求的数组。

注意: Cache.match() 基本上与Cache.matchAll() 相同,除了它 resolve 为 response[0] (即第一个匹配响应) 而不是 response (数组中所有匹配的响应)。

参数

request
Cache 中你尝试查找的The Request .
options 可选
一个选项对象,允许你为 match ?操作中要做的匹配设置特定控制选项。可用选项包括:
  • ignoreSearch: 一个 Boolean 值用来设置匹配操作是否忽略url中的query部分。如果该参数设置为 true ,那么 http://foo.com/?value=bar 中的 ?value=bar 部分就会在匹配中被忽略. 该选项默认为 false
  • ignoreMethod: 一个 Boolean 值,如果设置为 true在匹配时就不会验证 Request 对象的http 方法 (通常只允许是 GET 或 HEAD 。) 该参数默认值为 false
  • ignoreVary: 一个 Boolean 值,该值如果为 true 则匹配时不进行 VARY 部分的匹配。例如,如果一个URL匹配,此时无论Response对象是否包含VARY头部,都会认为是成功匹配。该参数默认为 false
  • cacheName: 一个 DOMString ,代表一个具体的要被搜索的缓存。注意该选项被Cache.matchAll()方法忽略。

示例

caches.open('v1').then(function(cache) {
  cache.matchAll('/images/').then(function(response) {
    response.forEach(function(element, index, array) {
      cache.delete(element);
    });
  });
})

规范

Specification Status Comment
Service Workers
Cache
Working Draft Initial definition.

浏览器兼容性

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support4716391 No342 No
FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
Basic support4747 No3934 No5.0

1. Service workers (and Push) have been disabled in the Firefox 45 & 52 Extended Support Releases (ESR).

2. Requires HTTPS.

See also

文档标签和贡献者

此页面的贡献者: flyingsouthwind
最后编辑者: flyingsouthwind,