BackgroundFetchRegistration: match() Methode

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.

Hinweis: Diese Funktion ist in Web Workers verfügbar.

Die match() Methode der BackgroundFetchRegistration-Schnittstelle gibt das erste passende BackgroundFetchRecord zurück.

Syntax

js
match(request)
match(request, options)

Parameter

request

Das Request, für das Sie versuchen, Datensätze zu finden. Dies kann ein Request-Objekt oder eine URL sein.

options Optional

Ein Objekt, das Optionen für die match-Operation festlegt. Die verfügbaren Optionen sind:

ignoreSearch Optional

Ein boolescher Wert, der angibt, ob die Abfragezeichenfolge in der URL ignoriert werden soll. Wenn zum Beispiel auf true gesetzt, wird der Teil ?value=bar von http://foo.com/?value=bar bei der Suche ignoriert. Standardmäßig ist der Wert false.

ignoreMethod Optional

Ein boolescher Wert. Wenn true, verhindert dies, dass Abgleichsoperationen die http-Methode des Request validieren. Wenn false (Standard), sind nur GET und HEAD erlaubt.

ignoreVary Optional

Ein boolescher Wert. Wenn true, zeigt dies an, dass der Vary-Header ignoriert werden soll. Standardmäßig ist der Wert false.

Rückgabewert

Ein Promise, das mit dem ersten BackgroundFetchRecord aufgelöst wird, das der Anfrage entspricht oder mit undefined, wenn kein Treffer gefunden wird.

Hinweis: BackgroundFetchRegistration.match() ist im Wesentlichen identisch mit BackgroundFetchRegistration.matchAll(), außer dass es anstelle einer Auflösung mit einem Array aller passenden Datensätze nur mit dem ersten passenden Datensatz aufgelöst wird.

Ausnahmen

InvalidStateError DOMException

Wird zurückgegeben, wenn Sie match() aufrufen, wenn keine Abrufe im Gange sind. Dieser Zustand wird dadurch widergespiegelt, dass BackgroundFetchRegistration.recordsAvailable auf false gesetzt ist.

Beispiele

In diesem Beispiel suchen wir nach einem Datensatz mit der URL "/ep-5.mp3". Wenn ein BackgroundFetchRecord gefunden wird, können wir einige Informationen darüber zurückgeben.

js
bgFetch.match("/ep-5.mp3").then(async (record) => {
  if (!record) {
    console.log("No record found");
    return;
  }

  console.log(`Here's the request`, record.request);
  const response = await record.responseReady;
  console.log(`And here's the response`, response);
});

Spezifikationen

Specification
Background Fetch
# background-fetch-registration-match

Browser-Kompatibilität

BCD tables only load in the browser