Estoy usando express-session para configurar una cookie de sesión con una tienda de sesión redis. Cuando el usuario inicia sesión, puedo configurar correctamente una cookie para que inicie sesión como se muestra al hacer clic en el icono de "candado" junto a la URL de la página en Chrome y ver la cookie. Sin embargo, cuando se actualiza la página, mi usuario se desconecta porque la cookie se ha ido.
¿Cómo puedo evitar la pérdida de esa cookie al actualizar la página?
Mis opciones de sesión menos mis rutas se ven así y ejecuto mi cliente en https.
let sessionOptions = { secret: "REDACTED_FROM_STACKOVERFLOW", resave: true, name: "redisSession", expires: new Date(Date.now() + (60 * 1000 * 60 * 100000)), store: new RedisStore({client: redisClient}), cookie: { sameSite: 'none', secure: true, httpOnly: true, maxAge: 1000 * 60 * 1000 }, rolling: true, saveUninitialized: true }; app.use(cors({credentials: true, origin: 'https://localhost:8080'})); const httpsOptions = { key: fs.readFileSync(process.env.localHostCertKeyPath), cert: fs.readFileSync(process.env.localHostPemPath) } app.use(cookieParser("REDACTED_FROM_STACKOVERFLOW")); const httpsOptions = { key: fs.readFileSync(process.env.localHostCertKeyPath), cert: fs.readFileSync(process.env.localHostPemPath) } const server = https.createServer(httpsOptions, app).listen( constants.LOCAL_PORT, constants.HOST_NAME, () => { console.log("https://" + constants.HOST_NAME + ':' + constants.LOCAL_PORT + '/'); } );express , express-session , redis y connect-redis .Editar:
Texto completo:
redisSession=s:YGOMoRx_wWiIiqiYOYaIfcbbKfBujg7w.92wwY6TupTwVjRs4FLbWLxxSi6bm5XW7fDwNfXInW4Q; Ruta=/; Caduca = dom, 07 de marzo de 2021 16:18:28 GMT; Sólo Http; Seguro; MismoSitio=Ninguno
Cuando se actualiza la página, la cookie desaparece, pero mi ruta de verificación de estado en realidad establece la cookie nuevamente, pero el ícono de "candado" de Chrome no mostró que existiera. Como resultado, mi cliente tenía la cookie almacenada/cookies, pero no mostraba que había iniciado sesión. Hice una llamada de función para actualizar mis imágenes y la cookie apareció en el menú desplegable "bloquear" por algún motivo.