© ecco/Shutterstock.com
PWAs offlinefähig machen

Offline First ist das neue Mobile First


Webapplikationen, die sich auf den unterschiedlichen Systemen verhalten wie native Applikationen: Das ist seit langer Zeit ein viel diskutiertes Thema. Mit dem Aufkommen der Progressive Web Apps (PWAs) ist dieses Ziel in greifbare Nähe gerückt. Das Ziel einer PWA ist es, dass sie auf jeder denkbaren Plattform funktioniert. Der Funktionsumfang der PWA wächst mit den technischen Möglichkeiten des Browsers, auf dem sie ausgeführt wird. So erscheint die PWA auf der einen Seite in einem älteren Browser als einfache Webapplikation und nutzt auf der anderen Seite die Schnittstellen eines modernen Browsers, lässt sich dort installieren und bietet zahlreiche weitere Features wie beispielsweise Pushnachrichten oder Offlinefähigkeit. Mit Letzterem, also der Offlinefähigkeit von Webapplikationen, werden wir uns im Folgenden etwas näher beschäftigen. Sie erfahren, wie Sie Ihre Applikation offlinefähig machen können, was Sie dabei beachten müssen und warum dafür ein Umdenken erforderlich ist.

Bevor wir uns jetzt Hals über Kopf in den Code einer Applikation stürzen, sollten wir zunächst klären, was der Begriff „offline“ überhaupt bedeutet. Für viele Internetbenutzer sind die Offline-Dinos der verschiedenen Browserhersteller ein Bild des Schreckens, bedeuten Sie doch, dass die angeforderte Ressource nicht geladen werden konnte. An genau dieser Stelle setzen offlinefähige Applikationen an und speichern die zur Anzeige benötigten Dateien lokal im Browser zwischen. Fragt der Benutzer dann im Offlinezustand die Webapplikation an, wird sie aus dem lokalen Zwischenspeicher geliefert. Doch mit den statischen Ressourcen endet die Offlinefähigkeit einer Applikation nicht. Neben Ressourcen wie HTML, CSS, JavaScript und den verschiedenen Mediendateien bestehen moderne Single Page Applications aus einer Vielzahl von Anfragen an einen Webserver. Über diese bezieht die Applikation die dynamischen Daten für die Anzeige. Dynamische Anfragen sind erheblich schwieriger lokal zwischenzuspeichern als statische, vor allem vor dem Hintergrund, dass es sich bei diesen dynamischen Anfragen nicht nur um lesende, sondern auch um schreibende Operationen handeln kann. Um diese und weitere Probleme werden wir uns im Zuge dieses Artikels kümmern.

Sprechen wir von einer Applikation im Offlinezustand, handelt es sich dabei um einen globalen Browserzustand, bei dem der Browser nicht mit dem Internet kommunizieren kann. Dieser Zustand kann über die onLine-Eigenschaft des navigator-Objekts des Browsers ...

Neugierig geworden?

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang