Persistenz

Aus ProgrammingWiki
Archivierte Version vom 2017-01-22T11:56:58+00:00. Aktuelle Version
WissenKönnenProjekt
  • Serverseitig meist klassische DBMS (MySQL, MongoDB)
  • Clientseitige Speicherung ist durch den Browser beschränkt
    • Cookies: max 4 kByte (Name-Wert Zeichenkette)
    • WebStorage: max 5 MByte (Name-Wert Objekte)
    • IndexedDB: unbeschränkt (NoSQL, indiziert, Objekt-basiert)
  • Lesen und schreiben von Cookies
  • Umgang mit dem WebStorage Speicher
  • Verwendung von Transaktionen mit IndexedDB
  • Der Name des zuletzt angemeldeten Benutzers wird beim Start der WebApp angezeigt
  • Der aktuelle Zustand des Sudoku (inklusive Zeit) wird mittels WebStorage gespeichert und beim Start der WebApp wiederhergestellt

Cookies

  • Probieren Sie das Beispiel aus und erklären Sie warum Ihr Wert nicht der einzige im Cookie ist
  • Bearbeiten Sie den Code und speichern Sie die Werte unter einem anderen Schlüssel
  • Schließen Sie die Webseite und bearbeiten Sie das Beispiel erneut, erklären Sie die jetzigen Inhalte des Cookies
  • Parsen Sie den Cookie-Inhalt, sodass nur der Cookie-Wert des eigenen Schlüssels angezeigt wird
  • Recherchieren Sie wie die Gültigkeit eines Cookie-Wertes festgelegt wird
  • Legen Sie für Ihren Cookie-Wert eine kurze Gültigkeitsdauer fest und beobachten Sie was nach Ablauf passiert

WebStorage

  • Probieren Sie das Beispiel aus und weisen Sie nach, dass der gespeicherte Wert auch über die Laufzeit des Browsers hinaus erhalten bleibt
  • Recherchieren Sie eine alternative Syntax zum Schreiben und Lesen von Werten im Webstorage Objekt
  • Ändern Sie das Beispiel, sodass anstelle einer Zeichenkette ein Objekt mit einem zusätzlichen Zeitstempel gespeichert und ausgegeben wird
  • Öffnen Sie das Beispiel in einem neuen Tab und untersuchen Sie die Erreichbarkeit der gespeicherten Werte
  • Informieren Sie sich zu sessionStorage und stellen Sie das Beispiel entsprechend um
  • Wiederholen Sie den Erreichbarkeitstest, was stellen Sie fest?

IndexedDB

TODOIndexedDB
Beispiellösung WE1-P10.zip