Kurz-Fakten

  • Festgelegt in der Service-Worker-Spezifikation des W3C
  • Funktioniert nur über HTTPS – zum Testen auch auf localhost
  • Läuft nicht dauerhaft, sondern wird für einzelne Ereignisse gestartet
  • Hat keinen Zugriff auf die Seite selbst, nur auf Netzwerk, Cache und Benachrichtigungen

Einordnung

Was ein Service Worker darf – und was nicht

Der Service Worker sitzt zwischen der Web-App und dem Netzwerk. Er entscheidet, ob eine Datei frisch geladen oder aus dem Zwischenspeicher genommen wird, und macht eine App dadurch offline nutzbar. Trifft eine Push-Nachricht ein, startet der Browser ihn kurz, damit er die Benachrichtigung anzeigt. Er läuft aber nicht ununterbrochen, kann nicht auf die Oberfläche zugreifen und keinen Ton abspielen – deshalb ersetzt er keinen dauerhaft laufenden Wecker.

Updates in zwei Schritten

Liegt eine neue Version einer Web-App auf dem Server, installiert der Browser den neuen Service Worker im Hintergrund. Aktiv wird er erst, wenn die alte Version nicht mehr gebraucht wird – oder wenn die App ihn ausdrücklich übernehmen lässt. So ändert sich nichts mitten in der Benutzung.

In der Weckzentrale

Der Service Worker der Weckzentrale hält die App-Dateien offline bereit, zeigt Wecker und abgelaufene Countdowns als Benachrichtigung an und verarbeitet dort die Knöpfe Schlummern und Stopp. Ist eine neue Version bereit, bietet die App „Aktualisieren“ an.

Verwandte Begriffe