Cache.matchAll()
The matchAll()
method of the Cache
interface returns a Promise
that resolves to an array of all matching responses in the Cache
object.
Syntax
cache.matchAll(request, {options}).then(function(response) { // do something with the response array });
Parameters
- request Optional
-
The
Request
for which you are attempting to find responses in theCache
. This can be aRequest
object or a URL. If this argument is omitted, you will get a copy of all responses in this cache. - options Optional
-
An options object allowing you to set specific control options for the matching performed. The available options are:
-
ignoreSearch
: A boolean value that specifies whether the matching process should ignore the query string in the url. If set totrue
, the?value=bar
part ofhttp://foo.com/?value=bar
would be ignored when performing a match. It defaults tofalse
. -
ignoreMethod
: A boolean value that, when set totrue
, prevents matching operations from validating theRequest
http
method (normally onlyGET
andHEAD
are allowed.) It defaults tofalse
. -
ignoreVary
: A boolean value that when set totrue
tells the matching operation not to performVARY
header matching — i.e. if the URL matches you will get a match regardless of theResponse
object having aVARY
header or not. It defaults tofalse
.
-
Return value
A Promise
that resolves to an array of all matching responses in the Cache
object.
Note: Cache.match()
is basically identical to Cache.matchAll()
, except that rather than resolving with an array of all matching responses, it resolves with the first matching response only (that is, response[0]
).
Examples
caches.open('v1').then(function(cache) { cache.matchAll('/images/').then(function(response) { response.forEach(function(element, index, array) { cache.delete(element); }); }); })
Specifications
Specification |
---|
Service Workers 1 # cache-matchall |
Browser compatibility
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | |
matchAll |
47 |
16 |
39
Extended Support Releases (ESR) before Firefox 78 ESR do not support service workers and the Push API.
|
No |
34
Requires HTTPS.
|
11 |
47 |
47 |
39 |
34 |
11 |
5.0 |
See also
© 2005–2021 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/Cache/matchAll