Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.
BackgroundFetchRegistration
Eingeschränkt verfügbar
Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.
Want more support for this feature? Tell us why.
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> |
Browser-Kompatibilität
JavaScript aktivieren, um diese Browser-Kompatibilitätstabelle anzuzeigen.