Wann sollte ich html5 sessionStorage verwenden?

Lesezeit: 3 Minuten

Benutzeravatar von Meow
Miau

Ich habe den Unterschied zwischen gelernt sessionStorage (bleiben während der Sitzung bestehen) und localStorage (bleiben für immer bestehen, wenn sie nicht gelöscht werden).

Ich kann sehen, dass localStorage kann als bessere Version von Cookies verwendet werden. (mehr Größe, nicht für jede HTTP-Anfrage zum Server reisen, wie es Cookies tun).

Aber für sessionStorageIch denke Wann sollte ich es effektiv verwenden?

Ich habe über Benutzereingaben in Textfelder auf Seite A nachgedacht und gehe dann auf Seite B innerhalb desselben Tabs oder Browserfensters, Seite B kann Sitzungsspeicher nachschlagen.

Ich kann meine Vermutung nicht wirklich erweitern, mehr als das obige Szenario. Kann mir jemand sagen, wie SessionStorage verwendet werden kann?

  • Einige verwandte Threads: stackoverflow.com/questions/26556749/… stackoverflow.com/questions/19867599/… stackoverflow.com/questions/3259451/…

    – Devin Rhode

    20. Mai 2021 um 19:19 Uhr


Benutzeravatar von ThinkingStiff
DenkenSteif

Bei Ajax-gesteuerten dynamischen Schnittstellen gibt es oft nichts, was den aktuellen Zustand des Aussehens der Schnittstelle speichert (z. B. welche Registerkarte ausgewählt ist). sessionStorage könnte verwendet werden, um den Status der Benutzeroberfläche zu speichern. Wenn Sie also zu einer Seite zurückkehren, können Sie den Bildschirm so wiederherstellen, wie der Benutzer ihn betrachtet hat.

Eine andere Verwendung wäre, wenn Sie mehrere Seiten tief an einem einzelnen Objekt arbeiten, könnten Sie die ID wie eine globale Variable speichern: currentInvoiceId.

Benutzereinstellungen, die auf jeder Seite benötigt werden, wie ein spezielles Layout oder eine Vorlage, könnten einmal im Voraus geladen und eingefügt werden sessionStorage für einfachen Zugriff.

Einige Dinge, die der Benutzer nur einmal pro Anmeldung sehen soll, wie z. B. ein Nachrichten-Popup. Sie könnten speichern, dass sie es bereits gesehen haben sessionStorage. Dies würde auch für Aktionen funktionieren, die der Benutzer nur einmal pro Anmeldung ausführen soll.

Es ist eine gute Alternative zum Übergeben von Daten zwischen Seiten mit viewstate, hidden <input> Felder oder URL-Parameter.

  • Interessant, ich kann diese hässlichen versteckten Eingaben oder Divs endlich von HTML-Seiten entfernen 🙂

    – Miau

    14. Dezember 2011 um 2:56 Uhr

  • Gibt es eine gute Verwendung für sessionStorage in Single-Page-Apps, bei denen der Status einfach im Speicher (Javascript-Objekt) gespeichert werden kann?

    – Pau Fraces

    20. April 2016 um 14:19 Uhr


  • @ThinkingStiff bleibt sessionStorage nach einem Browserabsturz erhalten?

    – Pau Fraces

    22. April 2016 um 13:26 Uhr


  • Theoretisch sollte sessionStorage nach einem Browserabsturz erhalten bleiben, aber ich kann mich nicht erinnern, wann Chrome das letzte Mal bei mir abgestürzt ist. Wahrscheinlich sind die meisten Browser heutzutage mit Abstürzen fertig.

    – Devin Rhode

    20. Mai 2021 um 16:03 Uhr

  • @DevinRhode Heutzutage verwende ich sessionStorage, um Daten zu speichern, die aufbewahrt werden sollen, falls der Benutzer die Seite neu lädt

    – Pau Fraces

    21. Mai 2021 um 8:23 Uhr

Der Hauptgrund für die Verwendung von sessionStorage sind Fälle, in denen Ihr Benutzer, wenn er dieselbe Seite zweimal in zwei verschiedenen Registerkarten öffnen würde, separate Speicherbereiche für diese beiden Registerkarten wünschen würde. Stellen Sie sich beispielsweise eine Website vor, auf der Sie ein Ticket kaufen (und Sie können nur ein Ticket kaufen, wie bei einem Flugticketfluss, im Gegensatz zu einem Fall mit einem Einkaufswagen). Wenn der Benutzer versucht, zwei Tickets in zwei verschiedenen Registerkarten zu kaufen, möchten Sie nicht, dass sich die beiden Sitzungen gegenseitig stören. Mit sessionStorage können Sie diese Sitzungen unabhängig voneinander über mehrere Seitenladevorgänge hinweg verfolgen.

  • +1 Like für deine Antwort, da ich sie interessant finde. Könnten Sie bitte die letzte Zeile anders formulieren, ich verstehe nicht, was dieser Satz sagen will.

    – Pravin-Pudel

    2. April 2020 um 9:19 Uhr


1429910cookie-checkWann sollte ich html5 sessionStorage verwenden?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy