files/en-us/web/api/cache/keys/index.md
{{APIRef("Service Workers API")}}{{SecureContext_Header}}{{AvailableInWorkers}}
The keys() method of the {{domxref("Cache")}} interface returns a
{{jsxref("Promise")}} that resolves to an array of {{domxref("Request")}} objects
representing the keys of the {{domxref("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
VARYheader set on them.
keys()
keys(request)
keys(request, options)
request {{optional_inline}}
Request object or a URL.options {{optional_inline}}
keys
operation. The available options are:
ignoreSearch
true, the ?value=bar part of
https://example.com/?value=bar would be ignored when performing a match.
It defaults to false.ignoreMethod
true, prevents matching operations from validating the
{{domxref("Request")}} HTTP method (normally only GET
and HEAD are allowed.) It defaults to false.ignoreVary
true, tells the matching operation not to perform VARY
header matching. In other words, if the URL matches you will get a match
regardless of whether the {{domxref("Response")}} object has a VARY
header. It defaults to false.cacheName
Cache.keys().A {{jsxref("Promise")}} that resolves to an array of {{domxref("Request")}} objects.
caches
.open("v1")
.then((cache) => cache.keys())
.then((keys) => {
keys.forEach((request, index, array) => {
cache.delete(request);
});
});
{{Specifications}}
{{Compat}}