Cookie: En ocasiones también se utiliza la forma plural Cookies. El tipo es "archivo de texto pequeño", que son datos (normalmente cifrados) almacenados en el terminal local del usuario por algunos sitios web para identificar la identidad del usuario y realizar un seguimiento de la sesión. La información se guarda temporal o permanentemente en la computadora cliente del usuario.
Para operar cookies con node, necesitamos el módulo cookie-parser
npm i cookie-parser -s.
A continuación, introduzca este módulo en nuestro archivo
//Introduzca el módulo express const express = require('express') // crear una instancia expresa aplicación constante = expresar() //Operación del módulo de cookies const cookieParser = require('cookie-parser'); //Agregar firma de cookie app.use(cookieParser('Really outrageous')); //Utilice middleware de cookies, el valor cifrado es: 'Really outrageous'Nombre
de detalles del parámetro
: un nombre que identifica de forma única la cookie.
valor: el valor de la cadena almacenada en la cookie.
dominio: La cookie es válida para ese dominio.
ruta: indica la ruta afectada por esta cookie. El navegador enviará cookies a la ruta correspondiente en el dominio especificado según esta configuración.
caduca: Tiempo de caducidad, que indica cuándo caduca la cookie. Si no se establece este tiempo, el navegador eliminará todas las cookies cuando se cierre la página, pero también podemos configurar el tiempo de caducidad nosotros mismos.
Nota: Si el tiempo establecido en el cliente y el servidor es inconsistente, habrá una desviación cuando expire el uso.
edad máxima: se utiliza para indicarle al navegador cuánto tiempo caducará esta cookie (en segundos). Generalmente, la edad máxima tiene una prioridad más alta que la de caducidad.
HttpOnly: indique al navegador que no permita que el script document.cookie cambie el valor. Este valor también es invisible en document.cookie, pero esta cookie se incluirá en la solicitud http.
Nota: Aunque este valor no es recomendable en los scripts, existe en forma de archivo en el directorio de instalación del navegador. Esta configuración generalmente se establece en el lado del servidor.
seguro: indicador de seguridad cuando se especifica, cuando seguro es verdadero, no es válido en HTTP y solo es válido en HTTPS. Significa que el navegador solo puede pasar la cookie creada al servidor para la verificación de la sesión en la conexión HTTPS. Estas conexiones HTTP no pasan esta información, por lo que generalmente no se escucha.
En cuanto a cuestiones de lectura,
req.cookies: lee nuestras cookies no cifradas;
req.signedCookies: lee nuestras cookies cifradas;
Caso
app.get('/', (req, res) => { res.cookie('cart', {elementos: [1, 2, 3] }, { maxAge: 10000 * 2, httpOnly: verdadero, firmado: verdadero, ruta: '/' }); res.cookie('usuario', 'Zhang San', { httpOnly: verdadero, ruta: '/usuario', firmado: verdadero }) res.enviar('ok') console.log(solicitud.cookies) console.log(req.signedCookies) })
app.get('/usuario', (req, res) => { console.log(solicitud.cookies) res.send(solicitud.cookies firmadas) })
app.get('/noticias', función (req, res) { res.cookie('Edad', 'Dabai', { maxAge: 10000 * 2, httpOnly: verdadero, firmado: verdadero }) res.cookie('Edad', '0', { maxAge: 0 }); //Eliminar cookie res.send('Hola noticias de nodejs') })
Nuestras cookie
se eliminarán cuando maxAge
sea 0
.