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 des BackgroundFetchRegistration Interfaces gibt das erste passende BackgroundFetchRecord zurück.

Syntax

js
match(request)
match(request, options)

Parameter

request

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

options Optional

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

ignoreSearch Optional

Ein boolescher Wert, der angibt, ob die Abfragezeichenfolge in der URL ignoriert werden soll. Wenn beispielsweise auf true gesetzt, würde der Teil ?value=bar von http://foo.com/?value=bar bei der Durchführung eines Abgleichs ignoriert. Standardmäßig ist es false.

ignoreMethod Optional

Ein boolescher Wert. Wenn true, wird verhindert, dass Abgleichsvorgänge die http-Methode des Request validieren. Wenn false (Standardwert), sind nur GET und HEAD erlaubt.

ignoreVary Optional

Ein boolescher Wert. Wenn true wird angegeben, dass der Vary-Header ignoriert werden sollte. Standardmäßig ist es false.

Rückgabewert

Ein Promise, das mit dem ersten BackgroundFetchRecord aufgelöst wird, das mit der Anfrage übereinstimmt, oder undefined, wenn kein Übereinstimmung gefunden wird.

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

Ausnahmen

InvalidStateError DOMException

Wird zurückgegeben, wenn Sie match() aufrufen, während keine Fetches in Bearbeitung sind. Dieser Zustand wird durch BackgroundFetchRegistration.recordsAvailable reflektiert, das 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