ServiceWorkerGlobalScope: backgroundfetchfail-Ereignis
Eingeschränkt verfügbar
Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.
Want more browser 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.
Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Hinweis: Diese Funktion ist nur in Service Workers verfügbar.
Das backgroundfetchfail-Ereignis der ServiceWorkerGlobalScope-Schnittstelle wird ausgelöst, wenn ein Background Fetch fehlgeschlagen ist: wenn also mindestens eine Netzwerkanfrage im Rahmen des Abrufs nicht erfolgreich abgeschlossen wurde.
Dieses Ereignis kann nicht abgebrochen werden und durchläuft keine Ereignisweitergabe nach oben.
Syntax
Verwenden Sie den Ereignisnamen in addEventListener():
addEventListener("backgroundfetchfail", (event) => { })
Alternativ können Sie die Ereignisbehandlungseigenschaft der Schnittstelle zuweisen:
onbackgroundfetchfail = (event) => { }
Ereignistyp
Beschreibung
Wenn ein Background Fetch fehlschlägt (das heißt, mindestens eine der einzelnen Netzwerkanfragen wurde nicht erfolgreich abgeschlossen), startet der Browser bei Bedarf den Service Worker und löst das backgroundfetchfail-Ereignis in dessen globalem Gültigkeitsbereich aus.
Bei der Background Fetch API zeigt der Browser dem Benutzer ein UI-Element an, das den Fortschritt des Vorgangs angibt. Im backgroundfetchfail-Handler kann der Service Worker dieses UI aktualisieren, um anzuzeigen, dass der Vorgang fehlgeschlagen ist. Dazu ruft der Handler die updateUI()-Methode des Ereignisses auf und übergibt einen neuen Titel und/oder Symbole.
Im Handler für dieses backgroundfetchfail-Ereignis kann der Service Worker außerdem zugehörige Daten des Vorgangs bereinigen. Er kann auch erfolgreiche Antworten abrufen und speichern (beispielsweise mit der Cache-API). Um auf die Antwortdaten zuzugreifen, verwendet der Service Worker die registration-Eigenschaft des Ereignisses.
Beispiele
>UI aktualisieren
Dieser Ereignishandler aktualisiert das UI, um den Benutzer darüber zu informieren, dass der Vorgang fehlgeschlagen ist.
addEventListener("backgroundfetchfail", (event) => {
event.updateUI({ title: "Could not complete download" });
});
Spezifikationen
| Spezifikation |
|---|
| Background Fetch> # dom-serviceworkerglobalscope-onbackgroundfetchfail> |