从React js应用读取Express会话cookie
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从React js应用读取Express会话cookie相关的知识,希望对你有一定的参考价值。
我正在使用身份验证构建项目。我正在使用Node + React。我在后端设置了一个快速会话cookie,我希望组件做出反应以读取该cookie,以查看用户是否已通过身份验证。由于某些原因,我无法从react(客户端)访问该cookie。也许有人可以帮忙?
BACK:
app.use(session(
name: process.env.SESS_NAME,
resave: false,
saveUninitialized: false,
secret: process.env.SESS_SECRET,
cookie:
maxAge: parseInt(process.env.SESS_LIFETIME),
sameSite: true, //strict,
secure: process.env.NODE_ENV === "production"
))
FRONT:
import Cookies from "js-cookie";
...
console.log("cookie", Cookies.get("sid"));
在这种情况下,我有一个名为“ sid”的cookie,我可以在浏览器的控制台中看到它……但是当我尝试访问它时,它没有防御力
答案
您的问题是,在配置会话时,您尚未在cookie上设置httpOnly
属性。默认值为true
,这将阻止客户端浏览器读取Cookie。
以上是关于从React js应用读取Express会话cookie的主要内容,如果未能解决你的问题,请参考以下文章
Express + React:CSRF Cookie 在生产中未定义,在本地工作
跨域会话 Cookie(Heroku 上的 Express API + Netlify 上的 React App)
为啥 Postman 在我的 React 应用程序中接收到 express 会话 cookie 而不是我的 post 请求
Express/Passport 创建会话但不向前端发送 cookie