BackgroundFetchRegistration
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.
Das BackgroundFetchRegistration
Interface der Background Fetch API repräsentiert einen individuellen Hintergrundabruf.
Eine Instanz von BackgroundFetchRegistration
wird durch die Methoden BackgroundFetchManager.fetch()
oder BackgroundFetchManager.get()
zurückgegeben und hat daher keinen Konstruktor.
Instanzeigenschaften
Erbt auch Eigenschaften von seinem Elternteil, EventTarget
.
BackgroundFetchRegistration.id
Schreibgeschützt Experimentell-
Ein String, der die ID des Hintergrundabrufs enthält.
BackgroundFetchRegistration.uploadTotal
Schreibgeschützt Experimentell-
Ein
number
enthält die Gesamtanzahl der zu hochladenden Bytes. BackgroundFetchRegistration.uploaded
Schreibgeschützt Experimentell-
Ein
number
enthält die Größe in Bytes, die erfolgreich gesendet wurde, anfänglich0
. BackgroundFetchRegistration.downloadTotal
Schreibgeschützt Experimentell-
Ein
number
enthält die Gesamtdatenmenge in Bytes dieses Downloads. Dies ist der Wert, der beim Registrieren des Hintergrundabrufs festgelegt wurde, oder0
. BackgroundFetchRegistration.downloaded
Schreibgeschützt Experimentell-
Ein
number
enthält die Größe in Bytes, die heruntergeladen wurde, anfänglich0
. BackgroundFetchRegistration.result
Schreibgeschützt Experimentell-
Gibt anfangs einen leeren String zurück und bei Abschluss entweder den String
"success"
oder"failure"
. BackgroundFetchRegistration.failureReason
Schreibgeschützt Experimentell-
Ein String mit einem Wert, der einen Grund für einen Hintergrundabruf-Fehler angibt. Kann einer der folgenden Werte sein:
""
,"aborted"
,"bad-status"
,"fetch-error"
,"quota-exceeded"
,"download-total-exceeded"
. BackgroundFetchRegistration.recordsAvailable
Schreibgeschützt Experimentell-
Ein
boolean
das anzeigt, ob dasrecordsAvailable
-Flag gesetzt ist.
Instanzmethoden
Erbt auch Methoden von seinem Elternteil, EventTarget
.
BackgroundFetchRegistration.abort()
Experimentell-
Bricht den Hintergrundabruf ab. Gibt ein
Promise
zurück, das mittrue
aufgelöst wird, wenn der Abruf erfolgreich abgebrochen wurde. BackgroundFetchRegistration.match()
Experimentell-
Gibt ein einzelnes
BackgroundFetchRecord
Objekt zurück, das das erste Übereinstimmungsergebnis für die Argumente ist. BackgroundFetchRegistration.matchAll()
Experimentell-
Gibt ein
Promise
zurück, das mit einem Array vonBackgroundFetchRecord
Objekten aufgelöst wird, die Anfragen und Antworten enthalten.
Ereignisse
Erbt auch Ereignisse von seinem Elternteil, EventTarget
.
Hören Sie auf diese Ereignisse mit addEventListener()
oder indem Sie einen Ereignis-Listener der oneventname
-Eigenschaft dieser Schnittstelle zuweisen.
progress
Experimentell-
Wird ausgelöst, wenn es eine Änderung an einer der folgenden Eigenschaften gibt:
uploaded
,downloaded
,result
oderfailureReason
.
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
in die Konsole gibt "my-fetch"
zurück.
console.log(bgFetch.id); // "my-fetch"
Die match()
Methode kann verwendet werden, um einen bestimmten BackgroundFetchRecord
aus denen, die Teil der Registrierung sind, zu finden.
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 |