【问题标题】:cookie NOT stored in browsercookie 未存储在浏览器中
【发布时间】:2021-06-04 23:56:40
【问题描述】:

还有我的 cors 策略配置

app.use(
  cors({
    credentials: true,
    origin: "https://client-boggy.vercel.app",
    path: "/",
    methods: ["GET", "POST", "PUT", "DELETE"],
  })
);

但不工作enter image description here

【问题讨论】:

    标签: node.js express cookies cross-domain


    【解决方案1】:

    根据您分享的屏幕截图,httpOnly 选项设置为 true,which prevents client side JavaScript from accessing the cookie

    您能否分享设置 cookie 的快速代码,以及您在控制台中获得的结果 cookie 字符串以确保安全?

    【讨论】:

    • 这是 express 文件中的代码到 setHeader ``` res.setHeader("Set-Cookie", cookie.serialize("at", token, { httpOnly: process.env.NODE_ENV === " production" ? true : false, secure: process.env.NODE_ENV === "production" ? true : false, path: "/", sameSite: "none", maxAge: 60 * 60 * 24 * 7, // 1周}) }) ) ```
    • @AbdelfatahAshour 基于该代码和httpOnly 属性,如果您在生产环境中运行,客户端javascript 将无法访问或看到cookie。这回答了你的问题,不是吗?
    • 是的,我不尝试在生产中使用 javascript 应用程序访问它,所以我设置 httpOnly true ,问题是 cookie 并非在所有路径中都可用,并且 cookie 具有属性路径:“/”,EX:/ :category/:brand 在这里我可以在浏览器存储 API 中看到 cookie 但在 /home 看不到它!
    • 嗯。您能否分享指向您所指的“浏览器存储 API”的链接?
    • 我的意思是谷歌浏览器中的标签存储,
    猜你喜欢
    • 2021-06-29
    • 1970-01-01
    • 2020-05-05
    • 2021-10-13
    • 2018-10-30
    • 1970-01-01
    • 1970-01-01
    • 2017-10-07
    • 2021-07-05
    相关资源
    最近更新 更多