c't 3/2018
S. 174
Know-how
Offline im Browser
Aufmacherbild
Bild: Albert Hulm

Unabhängigkeitserklärung

Offline-Webanwendungen mit Application Cache und IndexedDB entwickeln

In einer klassischen Webanwendung liefert der Server auf Anfrage Inhalte aus und der Browser zeigt sie an. Ohne Verbindung zum Server funktioniert die Anwendung nicht mehr. Aktuelle Browser unterstützen verschiedene Techniken, um Webanwendungen zu entwickeln, die auch offline funktionieren.

Webanwendungen lösen viele Probleme von Desktopanwendungen: Sie laufen auf unterschiedlichen Betriebssystemen (sofern ein zeitgemäßer Browser installiert ist), müssen nicht installiert werden und brauchen keinen Update-Mechanismus – der Browser des Anwenders lädt die Ressourcen immer frisch herunter. Alle Daten speichert der Server. Die Webanwendung lässt sich auf vielen Rechnern gleichzeitig benutzen. Diese Vorteile machen Webanwendungen zu einer attraktiven Alternative für klassische Client-Server-Anwendungen, die im Internet oder lokalen Netzwerk bereitgestellt werden. Ein Problem gibt es allerdings, wenn die Netzwerkverbindung abbricht.

Um die größte Schwachstelle der klassischen Rollenverteilung zwischen Browser und Webserver zu lösen, können Webentwickler Techniken in neuen Browsern einsetzen, sodass die Anwendung auch offline funktioniert: Der „Application Cache“ speichert Dateien lokal so zwischen, dass sie selbst dann offline angezeigt werden, wenn der Benutzer den Rechner zwischendurch neugestartet hat. Mit „IndexedDB“ können Sie Daten in einer Datenbank lokal speichern und auslesen. Der Außendienstmitarbeiter muss einmalig mit bestehender Netzwerkverbindung die Webseite geöffnet haben und kann sie später auch offline im Zug benutzen.