Cache: matchAll() Methode
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.
Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Hinweis: Diese Funktion ist in Web Workers verfügbar.
Die matchAll()
Methode des Cache
-Interfaces gibt ein Promise
zurück, das sich in ein Array von allen passenden Antworten im Cache
-Objekt auflöst.
Syntax
matchAll()
matchAll(request)
matchAll(request, options)
Parameter
request
Optional-
Der
Request
, für den Sie versuchen, Antworten imCache
zu finden. Dies kann einRequest
-Objekt oder eine URL sein. Wenn dieses Argument weggelassen wird, erhalten Sie eine Kopie aller Antworten in diesem Cache. options
Optional-
Ein Optionsobjekt, das es Ihnen ermöglicht, spezifische Kontrolloptionen für das durchgeführte Matching festzulegen. Die verfügbaren Optionen sind:
ignoreSearch
-
Ein boolescher Wert, der angibt, ob der Abgleichsprozess den Query-String in der URL ignorieren soll. Wenn auf
true
gesetzt, wird der?value=bar
Teil vonhttp://foo.com/?value=bar
beim Abgleich ignoriert. Standardmäßig ist esfalse
. ignoreMethod
-
Ein boolescher Wert, der, wenn auf
true
gesetzt, verhindert, dass Abgleichsoperationen diehttp
-Methode desRequest
validieren (normalerweise sind nurGET
undHEAD
erlaubt). Standardmäßig ist esfalse
. ignoreVary
-
Ein boolescher Wert, der, wenn auf
true
gesetzt, dem Abgleich mitteilt, dass keinVARY
-Header-Abgleich durchgeführt werden soll — d.h. wenn die URL übereinstimmt, erhalten Sie eine Übereinstimmung unabhängig davon, ob dasResponse
-Objekt einenVARY
-Header hat oder nicht. Standardmäßig ist esfalse
.
Rückgabewert
Ein Promise
, das zu einem Array von allen passenden Antworten im Cache
-Objekt aufgelöst wird.
Note:
Cache.match()
ist grundsätzlich identisch zuCache.matchAll()
, außer, dass es anstelle der Auflösung mit einem Array aller passenden Antworten nur mit der ersten passenden Antwort aufgelöst wird (das heißt,response[0]
).
Beispiele
Das folgende Beispiel ruft alle Antworten im v1
Cache ab, die mit der URL /
übereinstimmen, auch inklusive potenzieller Query-Parameter. Durch Verwendung von { ignoreSearch: true }
würde matchAll
sowohl /
als auch /?value=bar
abrufen.
Anschließend protokolliert es die Anzahl der passenden Antworten.
caches
.open("v1")
.then((cache) => cache.matchAll("/", { ignoreSearch: true }))
.then((responses) => {
console.log(`Found ${responses.length} matching responses`);
});
Spezifikationen
Specification |
---|
Service Workers # cache-matchall |