Heim >Backend-Entwicklung >PHP-Tutorial >Den Geheimnissen der Cookies auf die Spur kommen: Wo gibt es sie wirklich?
Entdecken Sie die Geheimnisse der Kekse: Wo gibt es sie?
Bei der täglichen Nutzung von Websites beschäftigen wir uns häufig mit Cookies, z. B. dem Merken von Passwörtern, Einkaufswagen, Werbeempfehlungen usw., und die Rolle von Cookies kann nicht ignoriert werden. Was genau sind Cookies? Wo werden sie gespeichert? Lassen Sie uns heute die Geheimnisse der Cookies lüften.
Was sind Cookies?
Ein Cookie ist eine kleine Datendatei, die auf dem Computer des Benutzers gespeichert und normalerweise von einer Website an einen Browser gesendet wird, der sie dann bei nachfolgenden Anfragen an den entsprechenden Server zurücksendet. Sie werden in der Regel dazu verwendet, Sitzungsinformationen, Warenkorbinhalte, Präferenzeinstellungen usw. des Benutzers zu speichern, damit der Benutzer beim nächsten Besuch der Website automatisch wiedererkannt und die entsprechenden Daten geladen werden können.
Wo genau existiert es?
Wenn wir darüber sprechen, wo Cookies gespeichert werden, müssen wir zunächst die Grundkenntnisse des HTTP-Protokolls verstehen. Im HTTP-Protokoll gibt es zwei verschiedene Speichermethoden: Sitzungsspeicher und persistenter Speicher.
Sitzungsspeicherung bedeutet, dass alle Cookies vom Computer gelöscht werden, wenn der Benutzer das Browserfenster schließt. Dies bedeutet, dass das Sitzungscookie nur die aktuelle Sitzung des Benutzers überlebt. Wenn der Benutzer den Browser schließt, wird das Sitzungscookie gelöscht.
Hier ist ein einfaches Beispiel, das zeigt, wie man ein Sitzungscookie mit dem Express-Framework erstellt:
const express = require('express') const cookieParser = require('cookie-parser') const app = express() app.use(cookieParser()) app.get('/', (req, res) => { res.cookie('username', 'john doe', { httpOnly: true }) res.send(`Hello World!`) }) app.listen(3000, () => { console.log(`Example app listening at http://localhost:3000`) })
In diesem Beispiel verwenden wir die Middleware cookie-parser
, um das Sitzungscookie im Browser zu speichern den Gerätespeicher. Wenn der Benutzer das Browserfenster schließt, wird das Cookie gelöscht. cookie-parser
的中间件,将会话cookie存储在浏览器内存中。如果用户关闭了浏览器窗口,该cookie将被删除。
持久cookie不同于会话cookie,它们可以设置过期时间,即使关闭了浏览器,它们仍然会在计算机上存储,直到过期时间到达或手动删除。
下面是一个例子,演示如何使用Express框架创建一个持久cookie:
const express = require('express') const cookieParser = require('cookie-parser') const app = express() app.use(cookieParser()) app.get('/', (req, res) => { res.cookie('username', 'john doe', { maxAge: 60 * 60 * 1000, httpOnly: true }) res.send(`Hello World!`) }) app.listen(3000, () => { console.log(`Example app listening at http://localhost:3000`) })
在这个例子中,我们将maxAge
Persistente Cookies unterscheiden sich von Sitzungscookies dadurch, dass sie eine Ablaufzeit festlegen können und selbst wenn der Browser geschlossen wird, bleiben sie bis zum Ablauf auf dem Computer gespeichert Uhrzeit erreicht oder manuell gelöscht.
🎜Hier ist ein Beispiel, das zeigt, wie man mit dem Express-Framework ein dauerhaftes Cookie erstellt: 🎜rrreee🎜In diesem Beispiel setzen wir die OptionmaxAge
auf 1 Stunde, was bedeutet, dass das Cookie abläuft in Stunden. Wenn die Ablaufzeit erreicht ist, wird es automatisch vom Computer gelöscht. 🎜🎜Fazit🎜🎜Durch die obige Einführung können wir erkennen, dass Browser Sitzungscookies und dauerhafte Cookies speichern können. Sitzungscookies werden im Speicher des Browsers gespeichert, während dauerhafte Cookies auf der Festplatte des Computers des Benutzers gespeichert werden. Persistente Cookies werden ebenfalls gelöscht, sobald die Ablaufzeit erreicht ist oder vom Benutzer manuell gelöscht wird. Daher müssen beim Anwendungsdesign die Art und der Lebenszyklus von Cookies sorgfältig berücksichtigt werden, um den normalen Betrieb der Anwendung sicherzustellen. 🎜Das obige ist der detaillierte Inhalt vonDen Geheimnissen der Cookies auf die Spur kommen: Wo gibt es sie wirklich?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!