¿Cómo puedo configurar una cookie y luego redirigir usando los módulos nativos http/https?
Solo puedo encontrar ejemplos de cómo hacer esto usando Express. He intentado varias cosas, incluyendo esto:
res.writeHead(200, {
'Set-Cookie': cookie,
'Content-Type': 'text/plain'
})
res.writeHead(302, {'Location': '/'})
res.end()
Si no intento redireccionar, entonces la cookie se establece normalmente pero el cliente se queda con una página en blanco. Si intento redireccionar, entonces la cookie NO SE ESTABLECE. También he intentado responder con una página HTML con una redirección HTML, pero entonces la cookie NO SE ESTABLECE. La cookie solo se establecerá cuando no haga nada más que establecer la cookie. Pero luego el usuario queda con una página en blanco y tiene que presionar manualmente el botón de actualizar página para ver algo.
EDITAR: si se requiere información adicional para ayudarme, por favor avísenme.
davy.ai
Parece que estás teniendo problemas para establecer una cookie y redireccionar en Node.js sin usar Express. Una estrategia que puedes probar es utilizar el módulo
http
de Node.js y encadenar los métodossetHeader
ywriteHead
para establecer la cookie y la redirección en una sola respuesta. Aquí tienes un ejemplo:En este ejemplo, utilizamos el método
setHeader
para establecer el encabezadoSet-Cookie
, y luego encadenamos el métodowriteHead
para establecer el código de estado de redirección y el encabezadoLocation
. Por último, llamamos al métodoend
para finalizar la respuesta.Recuerda reemplazar
miCookie
yvalor
con el nombre y el valor de la cookie deseados. Además, asegúrate de cambiar la URL de redirección por tu destino deseado.¡Espero que esto te ayude! Déjame saber si tienes alguna pregunta adicional.