Junior
Erklären Sie den Unterschied zwischen Cookies, sessionStorage und localStorage.
sobes.tech KI
Antwort von AI
| Mechanismus | Größe (ungefähr) | Lebensdauer | Zugriff | Wird an den Server übertragen | Verwendung |
|---|---|---|---|---|---|
| Cookies | 4 KB | Ablaufdatum, vom Server oder Browser festgelegt | Aktuelles Dokument und Subdomains (je nach Einstellung) | Bei jeder HTTP-Anfrage | Authentifizierung, Tracking, benutzerdefinierte Einstellungen |
| localStorage | 5-10 MB | Unbegrenzt (solange der Benutzer nicht löscht) | Nur die aktuelle Origin (Protokoll, Domain, Port) | Nein | Speicherung von Benutzereinstellungen, Anwendungsstatusdaten |
| sessionStorage | 5-10 MB | Bis zum Schließen des Browser-Tabs/Fensters | Nur die aktuelle Origin (Protokoll, Domain, Port) | Nein | Temporäre Speicherung von Daten innerhalb einer Sitzung des Benutzers |
Cookies:
- Werden bei jeder HTTP-Anfrage an den Server gesendet, was den Datenverkehr erhöhen kann.
- Hauptzweck: Benutzeridentifikation (Sitzungscookies), Bevorzugungserinnerung, Benutzeraktionsverfolgung.
- Sowohl auf Client-Seite (JavaScript) als auch auf Server-Seite verfügbar.
- Können durch Domain und Pfad eingeschränkt werden.
- Weniger sicher für die Speicherung sensibler Daten, da sie automatisch an den Server gesendet werden.
localStorage:
- Daten werden lokal im Browser des Benutzers gespeichert.
- Für dauerhafte Speicherung von Daten, die bei jeder Anfrage nicht gesendet werden müssen.
- Einfache JavaScript-API.
- Daten werden in Schlüssel-Wert-Paaren gespeichert.
- Von anderen Origins nicht zugänglich.
// Wert setzen
localStorage.setItem('username', 'john.doe');
// Wert abrufen
let username = localStorage.getItem('username');
// Wert entfernen
localStorage.removeItem('username');
// Gesamten localStorage löschen
localStorage.clear();
sessionStorage:
- Ähnlich wie localStorage, aber Daten werden nur bis zum Schließen des aktuellen Tabs oder Fensters gespeichert.
- Ideal für temporäre Daten, die mit der aktuellen Sitzung des Benutzers verbunden sind (z.B. Formular-Daten, Warenkorb).
- Hat ebenfalls eine einfache JavaScript-API, ähnlich wie localStorage.
- Daten sind nur im aktuellen Origin verfügbar.
// Wert setzen
sessionStorage.setItem('sessionId', 'abc123');
// Wert abrufen
let sessionId = sessionStorage.getItem('sessionId');
// Wert entfernen
sessionStorage.removeItem('sessionId');
// Gesamten sessionStorage löschen
sessionStorage.clear();