Maison > Article > développement back-end > Percer les secrets des cookies : où existent-ils réellement ?
Découvrez les secrets des cookies : Où existent-ils ?
Dans l'utilisation quotidienne d'un site Web, nous sommes souvent confrontés à des cookies, tels que la mémorisation de mots de passe, de paniers d'achat, de recommandations publicitaires, etc., et le rôle des cookies ne peut être ignoré. Alors, que sont exactement les cookies ? Où sont-ils stockés ? Découvrons les secrets des cookies aujourd'hui.
Que sont les cookies ?
Un cookie est un petit fichier de données stocké sur l'ordinateur de l'utilisateur et est généralement envoyé par un site Web à un navigateur, qui le renvoie ensuite au serveur approprié lors des demandes ultérieures. Ils sont généralement utilisés pour stocker les informations de session de l'utilisateur, le contenu du panier, les paramètres de préférences, etc., afin que lors de sa prochaine visite sur le site Web, l'utilisateur puisse être automatiquement reconnu et les données correspondantes chargées.
Où existe-t-il exactement ?
Lorsque nous parlons de l'endroit où les cookies sont stockés, nous devons d'abord comprendre les connaissances de base du protocole HTTP. Dans le protocole HTTP, il existe deux méthodes de stockage différentes : le stockage de session et le stockage persistant.
Le stockage de session signifie que lorsque l'utilisateur ferme la fenêtre du navigateur, tous les cookies sont supprimés de l'ordinateur. Cela signifie que le cookie de session ne survivra qu'à la session en cours de l'utilisateur. Si l'utilisateur ferme le navigateur, le cookie de session est supprimé.
Voici un exemple simple qui montre comment créer un cookie de session à l'aide du framework Express :
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`) })
Dans cet exemple, nous utilisons le middleware cookie-parser
pour stocker le cookie de session dans le navigateur dans la mémoire de l'appareil. Si l'utilisateur ferme la fenêtre du navigateur, le cookie sera supprimé. 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
Les cookies persistants sont différents des cookies de session dans le sens où ils peuvent définir un délai d'expiration, et même si le navigateur est fermé, ils seront toujours stockés sur l'ordinateur jusqu'à l'expiration. l’heure est atteinte ou supprimée manuellement.
🎜Voici un exemple qui montre comment créer un cookie persistant à l'aide du framework Express : 🎜rrreee🎜Dans cet exemple, nous définissons l'optionmaxAge
sur 1 heure, ce qui signifie que le cookie expirera en heures. Lorsque le délai d'expiration est atteint, il sera automatiquement supprimé de l'ordinateur. 🎜🎜Conclusion🎜🎜Grâce à l'introduction ci-dessus, nous pouvons savoir que les navigateurs peuvent stocker des cookies de session et des cookies persistants. Les cookies de session sont stockés dans la mémoire du navigateur, tandis que les cookies persistants sont stockés sur le disque dur de l'ordinateur de l'utilisateur. Les cookies persistants seront également supprimés une fois le délai d'expiration atteint ou supprimés manuellement par l'utilisateur. Par conséquent, lors de la conception d’une application, le type et le cycle de vie des cookies doivent être soigneusement pris en compte pour garantir le fonctionnement normal de l’application. 🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!