Cache: keys() method
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2018.
Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
Note: This feature is available in Web Workers.
The keys() method of the Cache interface returns a Promise that resolves to an array of Request objects representing the keys of the Cache.
The requests are returned in the same order that they were inserted.
Note: Requests with duplicate URLs but different headers can be returned if their responses have the VARY header set on them.
Syntax
keys() keys(request) keys(request, options) Parameters
requestOptional-
The
Requestwant to return, if a specific key is desired. This can be aRequestobject or a URL. optionsOptional-
An object whose properties control how matching is done in the
keysoperation. The available options are:ignoreSearch-
A boolean value that specifies whether the matching process should ignore the query string in the URL. If set to
true, the?value=barpart ofhttp://foo.com/?value=barwould be ignored when performing a match. It defaults tofalse. ignoreMethod-
A boolean value that, when set to
true, prevents matching operations from validating theRequestHTTPmethod (normally onlyGETandHEADare allowed.) It defaults tofalse. ignoreVary-
A boolean value that, when set to
true, tells the matching operation not to performVARYheader matching. In other words, if the URL matches you will get a match regardless of whether theResponseobject has aVARYheader. It defaults tofalse. cacheName-
A string that represents a specific cache to search within. Note that this option is ignored by
Cache.keys().
Return value
Examples
caches .open("v1") .then((cache) => cache.keys()) .then((keys) => { keys.forEach((request, index, array) => { cache.delete(request); }); }); Specifications
| Specification |
|---|
| Service Workers> # cache-keys> |
Browser compatibility
Loading…