Offline-Web-Apps – So funktionieren Meteor-Apps auch ohne Internetverbindung
Kommentare

Web-Applikationen, die auch offline funktionieren, können für den User sehr nützlich sein. Mit Frameworks wie zum Beispiel Meteor können bereits Apps erstellt werden, die offline funktionieren – zumindest, solange der Browser nicht geschlossen wird.

Dementsprechend stellt sich natürlich die Frage, ob es keine Lösung gibt, um auch komplett offline mit Meteor-Apps arbeiten zu können. Dieser Problematik wurde nun nachgegangen.

Problemlösung mit AppCache und GroundDB

Zwei der Meteor-Prinzipien, die dafür sorgen, dass der Client alles Nötige hat, um Apps auch offline ausführen zu können, sind „Data on the Wire“ und „Database Everywhere“. Während ersteres meint, dass jeder Client alle Assets bei der Verbindung erhält und danach Daten nur zwischen Client und Server ausgetauscht werden, bedeutet letzteres, dass jeder Client ein Subset der Server-Datenbank hat, das mit den gleichen APIs auf die gleichen Operationen antwortet.

Um eine Web-Applikation auch offline ausführen zu können, müssen zum einen die Applikations-Assets aufrechterhalten werden. Das geht zum Beispiel mit AppCache, das die Assets speichert und Usern erlaubt, sie auch offline zu öffnen. Um es mit Meteor-Applikationen nutzen zu können, wird einfach das AppCache-Paket hinzugefügt.

Zum anderen müssen auch die Daten aufrechterhalten werden, wenn der User den Browser schließt. Hier liegt das eigentliche Probleme, denn Meteor speichert die Client-seitige Datenbank in-memory. Dadurch gehen die Daten verloren, wenn der Browser geschlossen wird.

Um dieses Problem zu umgehen, kann GroundDB genutzt werden, das Meteor eine Offline-Datenbank zur Verfügung stellt und sie im localStorage speichert. Dafür wird das GroundDB-Paket zur Meteor-Applikation hinzugefügt; anschließend kann festgelegt werden, welche Daten im localStorage gespeichert werden.

Natürlich gibt es noch weitere Probleme, die beim Erstellen einer Offline-Web-Applikationen auftreten können, allerdings ist der Einsatz von AppCache und GroundDB ein Schritt in die richtige Richtung, um Meteor-Applikationen auch offline nutzen zu können.

Aufmacherbild: Offline Concept von Shutterstock / Urheberrecht: Krasimira Nevenova

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -