Das HTTP-Protokoll ist eines der wichtigsten Protokolle für eine reibungslose Kommunikation zwischen Server und Client. Der Hauptnachteil des HTTP-Protokolls ist ein zustandsloses Protokoll, das bedeutet, dass es keinerlei Antwort- und Requestsinformationen des Servers und des Clients verfolgt. Um dieses Problem zu lösen, gibt es drei Möglichkeiten, nützliche Informationen zu verfolgen In diesem Artikel werden wir den Unterschied zwischen lokalem Speicher, Sitzungsspeicher und Cookies sehen und warum es für einen Webentwickler wichtig ist, diese Begriffe zu kennen. 

Lokaler Speicher: Diese schreibgeschützte Schnittstelleneigenschaft bietet Zugriff auf das lokale Speicherobjekt des Dokuments, die gespeicherten Daten werden über Browsersitzungen hinweg gespeichert. Ähnlich wie sessionStorage, außer dass localStorage-Daten gelöscht werden, wenn die Seitensitzung endet – das heißt, wenn die Seite geschlossen wird. Es wird gelöscht, wenn die letzte „private“ Registerkarte eines Browsers geschlossen wird (localStorage-Daten für ein Dokument, das in einer privaten Browser- oder Inkognito-Sitzung geladen wurde).

DOMStrings sind Speicherformate, die UTF-16 verwenden, um Daten zu codieren, die zwei Bytes pro Zeichen verwenden. Strings werden automatisch aus Integer-Schlüsseln generiert, genau wie bei Objekten. Die in LocalStorage gespeicherten Daten sind spezifisch für ein Protokoll im Dokument. Wenn die Site über HTTP geladen wird (z. B. http://example.com), gibt localStorage ein anderes Objekt zurück, als wenn sie über HTTPS geladen wird (z. B. https://abc.com).

Wenn ein Dokument aus einer Datei geladen wird: URL (d. h. direkt aus dem lokalen Dateisystem des Benutzers, anstatt vom Server geladen zu werden), sind die Verhaltensanforderungen nicht definiert und können je nach Browser unterschiedlich sein. Jede Datei scheint von localStorage in allen aktuellen Browsern ein anderes Objekt zurückgegeben zu werden: URL. Im Wesentlichen scheint es so zu sein, dass jede URL: Datei ihren eigenen eindeutigen lokalen Speicherbereich hat.

Dieses Verhalten kann nicht garantiert werden, da, wie oben erwähnt, die Datei: URL-Anforderungen unklar bleiben. Daher besteht die Möglichkeit, dass Browser jederzeit ändern können, wie sie mit Dateien umgehen. Die Art und Weise, wie einige Browser damit umgehen, hat sich weiterentwickelt.

Lokale Speicherung hat 4 Methoden:

  • setItem() Methode – Diese Methode nimmt zwei Parameter, einen Schlüssel und einen Wert. Es wird verwendet, um den Wert an einem bestimmten Ort mit dem Namen des Schlüssels zu speichern.
    localStorage.setItem(Schlüssel, Wert)
  • getIteam()-Methode – Diese Methode nimmt einen Parameter, der Schlüssel ist, der verwendet wird, um den Wert abzurufen, der mit einem bestimmten Schlüsselnamen gespeichert ist.
    localStorage.getItem(Schlüssel)
  • removeItem()-Methode – Diese Methode wird verwendet, um den im Speicher gespeicherten Wert in Bezug auf den Schlüssel zu entfernen.
    localStorage.removeItem(Schlüssel)
  • clear()-Methode – Diese Methode wird verwendet, um alle im lokalen Speicher gespeicherten Werte zu löschen.
    localStorage.clear()

Bild des lokalen Speicherbereichs

Was ist Sitzungsspeicher?

Auf Sitzungsspeicherobjekte kann mit der schreibgeschützten Eigenschaft sessionStorage zugegriffen werden. Der Unterschied zwischen sessionStorage und localStorage besteht darin, dass localStorage-Daten nicht ablaufen, während sessionStorage-Daten gelöscht werden, wenn die Seitensitzung endet.

Eine eindeutige Seitensitzung wird erstellt, sobald ein Dokument in einem Browser-Tab geladen wird. Seitensitzungen sind jeweils nur für eine Registerkarte gültig. Seiten werden nur so lange gespeichert, wie die Registerkarte oder der Browser geöffnet ist; Sie bleiben nach dem Neuladen und Wiederherstellen der Seite nicht bestehen. Jedes Mal, wenn eine Registerkarte oder ein Fenster geöffnet wird, wird eine neue Sitzung erstellt. dies unterscheidet sich von Session-Cookies. Jede Registerkarte/jedes Fenster, das mit derselben URL geöffnet wird, erstellt einen eigenen Sitzungsspeicher. Wenn Sie eine Registerkarte duplizieren, wird der Sitzungsspeicher der ursprünglichen Registerkarte auf die duplizierte Registerkarte kopiert. Das Schließen eines Fensters/Tabs beendet die Sitzung und löscht sessionStorage-Objekte.

Das Protokoll einer Seite bestimmt, welche Daten in sessionStorage gespeichert werden. Insbesondere Daten, die von Skripten gespeichert werden, auf die über HTTP (z. B. http://abc.com) zugegriffen wird, werden in einem separaten Objekt derselben Website gespeichert, auf die über HTTPS (z. B. https://abc.com) zugegriffen wird. Eine DOMString-Nummer besteht aus zwei Bytes pro Zeichen im UTF-16-DOMString-Format. Strings werden automatisch aus Integer-Schlüsseln generiert, genau wie bei Objekten.

Die Sitzungsspeicherung hat 4 Methoden:

  • setItem() Methode – Diese Methode nimmt zwei Parameter, einen Schlüssel und einen Wert. Es wird verwendet, um den Wert an einem bestimmten Ort mit dem Namen des Schlüssels zu speichern.
    sessionStorage.setItem(Schlüssel, Wert)
  • getIteam()-Methode – Diese Methode nimmt einen Parameter, der Schlüssel ist, der verwendet wird, um den Wert abzurufen, der mit einem bestimmten Schlüsselnamen gespeichert ist.
    sessionStorage.getItem(Schlüssel)
  • removeItem()-Methode – Diese Methode wird verwendet, um den im Speicher gespeicherten Wert in Bezug auf den Schlüssel zu entfernen.
    sessionStorage.removeItem(Schlüssel)
  • clear()-Methode – Diese Methode wird verwendet, um alle im Sitzungsspeicher gespeicherten Werte zu löschen
    sessionStorage.clear()

Bild des Sitzungsspeichers

Plätzchen:Der Begriff „Cookie“ bezieht sich nur auf die Textinformationen einer Website. Um Sie zu erkennen und Ihnen Ergebnisse gemäß Ihren Präferenzen anzuzeigen, speichert diese Website einige Informationen in Ihrem lokalen System, wenn Sie eine bestimmte Website besuchen. Die Geschichte des Internets ist seit langem von der Verwendung von Cookies geprägt. Ein Website-Besucher fragt den Server nach einer Webseite, wenn er sie besucht. Jede Requests für einen Server ist einzigartig. Ebenso wird bei einem hundertmaligen Besuch jede Requests vom Server als einzigartig betrachtet. Da ein Server jede Sekunde viele Requestsn erhält, erscheint es logisch und naheliegend, die Informationen jedes Benutzers auf einem Server zu speichern. Dieselben Informationen werden möglicherweise nicht erneut benötigt, wenn Sie nicht zurückkehren. Daher wird ein Cookie gesendet und auf Ihrem lokalen Computer gespeichert, um Sie eindeutig zu identifizieren. Sie erhalten eine Antwort von demselben Server, wenn Sie ihn das nächste Mal treffen, da er Sie erkennt. Fast jeder Server verwendet dieses Cookie (einige Ausnahmen bestehen heute aufgrund von Werbung). Obwohl Sie möglicherweise viele Cookies in Ihrem System haben, werden solche Cookies daher von einem Server erkannt und analysiert.

Als Cookies zum ersten Mal entwickelt wurden, wurden sie verwendet, um die Erfahrung des Entwicklers zu verbessern. Erwägen Sie den Besuch einer Website in einer anderen Sprache als Ihrer Muttersprache (sagen wir Englisch). Sie können Englisch als Ihre Sprache im Sprachbereich der Website auswählen. Wenn Sie dieselbe Website fünfmal besuchen, kann es erforderlich sein, die Sprache fünfmal am Tag zu wechseln. Diese Angaben werden daher in einem Cookie auf Ihrem System gespeichert. Dadurch wird sichergestellt, dass der Server weiß, dass Sie die Website bei der nächsten Requests auf Englisch anzeigen möchten. Cookies sind in dieser Hinsicht unerlässlich. Die heute verwendeten Scale-Cookies sind viel kleiner als das obige Beispiel.

Bild von Keksen

Unterschied zwischen lokalem Speicher, Sitzungsspeicher und Cookies

Lokaler Speicher SitzungsspeicherKekse 
Die Speicherkapazität des lokalen Speichers beträgt 5 MB/10 MBDie Speicherkapazität des Sitzungsspeichers beträgt 5 MBDie Speicherkapazität von Cookies beträgt 4KB
Da es nicht sitzungsbasiert ist, muss es per Javascript oder manuell gelöscht werdenEs ist sitzungsbasiert und funktioniert pro Fenster oder Registerkarte. Das bedeutet, dass Daten nur für die Dauer einer Sitzung gespeichert werden, dh bis der Browser (oder Tab) geschlossen wirdCookies verfallen je nach Einstellung und Funktion pro Registerkarte und Fenster 
Der Client kann nur lokalen Speicher lesenDer Client kann nur lokalen Speicher lesenSowohl Clients als auch Server können die Cookies lesen und schreiben
Es findet keine Datenübertragung zum Server stattEs findet keine Datenübertragung zum Server stattEine Datenübertragung zum Server ist vorhanden
Es gibt weniger alte Browser, die dies unterstützenEs gibt weniger alte Browser, die dies unterstützenEs wird von allen Browsern unterstützt, einschließlich älterer Browser