BackgroundFetchRegistration
Eingeschränkt verfügbar
Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.
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.
Das BackgroundFetchRegistration-Interface der Background Fetch API repräsentiert einen einzelnen Hintergrundabruf.
Eine Instanz von BackgroundFetchRegistration wird von den Methoden BackgroundFetchManager.fetch() oder BackgroundFetchManager.get() zurückgegeben und hat daher keinen Konstruktor.
Instanz-Eigenschaften
Erbt auch Eigenschaften von seinem übergeordneten Objekt, EventTarget.
BackgroundFetchRegistration.idSchreibgeschützt-
Ein String, der die ID des Hintergrundabrufs enthält.
BackgroundFetchRegistration.uploadTotalSchreibgeschützt-
Ein
Number, das die Gesamtanzahl der zu hochladenden Bytes enthält. BackgroundFetchRegistration.uploadedSchreibgeschützt-
Ein
Number, das die erfolgreich gesendete Größe in Bytes enthält, anfangs0. BackgroundFetchRegistration.downloadTotalSchreibgeschützt-
Ein
Number, das die Gesamtanzahl in Bytes dieses Downloads enthält. Dies ist der Wert, der beim Registrieren des Hintergrundabrufs festgelegt wurde, oder0. BackgroundFetchRegistration.downloadedSchreibgeschützt-
Ein
Number, das die Anzahl der heruntergeladenen Bytes enthält, anfangs0. BackgroundFetchRegistration.resultSchreibgeschützt-
Gibt anfangs einen leeren String zurück, bei Abschluss entweder den String
"success"oder"failure". BackgroundFetchRegistration.failureReasonSchreibgeschützt-
Ein String mit einem Wert, der einen Grund für einen Fehlschlag des Hintergrundabrufs angibt. Kann einen der folgenden Werte haben:
"","aborted","bad-status","fetch-error","quota-exceeded","download-total-exceeded". BackgroundFetchRegistration.recordsAvailableSchreibgeschützt-
Ein
Boolean, der anzeigt, ob dasrecordsAvailable-Flag gesetzt ist.
Instanz-Methoden
Erbt auch Methoden von seinem übergeordneten Objekt, EventTarget.
BackgroundFetchRegistration.abort()-
Bricht den Hintergrundabruf ab. Gibt ein
Promisezurück, das mittrueaufgelöst wird, wenn der Abruf erfolgreich abgebrochen wurde. BackgroundFetchRegistration.match()-
Gibt ein einzelnes
BackgroundFetchRecord-Objekt zurück, das die erste Übereinstimmung für die Argumente darstellt. BackgroundFetchRegistration.matchAll()-
Gibt ein
Promisezurück, das mit einem Array vonBackgroundFetchRecord-Objekten aufgelöst wird, die Anfragen und Antworten enthalten.
Ereignisse
Erbt auch Ereignisse von seinem übergeordneten Objekt, EventTarget.
Diese Ereignisse können mit addEventListener() überwacht werden, oder indem ein Ereignis-Listener der oneventname-Eigenschaft dieser Schnittstelle zugewiesen wird.
progress-
Wird ausgelöst, wenn sich einer der folgenden Eigenschaften ändert:
uploaded,downloaded,resultoderfailureReason.
Beispiele
Der folgende Code erstellt ein BackGroundFetchRegistration als bgFetch mit einer id von "my-fetch".
navigator.serviceWorker.ready.then(async (swReg) => {
const bgFetch = await swReg.backgroundFetch.fetch(
"my-fetch",
["/ep-5.mp3", "ep-5-artwork.jpg"],
{
title: "Episode 5: Interesting things.",
icons: [
{
sizes: "300x300",
src: "/ep-5-icon.png",
type: "image/png",
},
],
downloadTotal: 60 * 1024 * 1024,
},
);
});
Das Protokollieren der id zur Konsole gibt "my-fetch" zurück.
console.log(bgFetch.id); // "my-fetch"
Die match()-Methode kann verwendet werden, um einen bestimmten BackgroundFetchRecord zu finden, der zu der Registrierung gehört.
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
| Spezifikation |
|---|
| Background Fetch> # background-fetch-registration> |