gpt4 book ai didi

node.js - 在 ExpressJs 中设置 Cookie 失败

转载 作者:搜寻专家 更新时间:2023-11-01 00:00:24 38 4
gpt4 key购买 nike

我在 Express 4.x 中遇到问题。我无法设置任何 cookie。我想通过 Ajax 请求设置一个 cookie,我发出请求,我的服务器端 res.cookie() 被执行,在我的响应 header 中我可以找到具有特定名称和值的“set-cookie” header ,但没有发生,cookie 未注册。我没有 HttpOnly 或安全标志。

Cookie 设置示例:

res.cookie('my_cookie','value',{maxAge:500,secure:false,httpOnly:false});

我注意到,如果我将 maxAge 设置为 500,响应 header 中的 cookie 过期日期大约是 5 小时前,所以我尝试添加更大的值,但没有任何反应。

这就像我的 set-cookie header 被忽略了。我不使用 AngularJS,只使用 jQuery。

如果我从 js 控制台将 set-cookie 内容放入 document.cookie 中,则 cookie 已注册..

提前致谢,抱歉我的英语不好。

最佳答案

4.0 版从库中删除了许多方便的中间件,以实现更加模块化的架构;在这种情况下,您需要引用 cookie-parser中间件。没有它,req.cookies 只是一个空的 {}。

$npm 安装 cookie-parser

var express      = require('express')
var cookieParser = require('cookie-parser')

var app = express()
app.use(cookieParser())

您还需要它来签署 cookies:

enter image description here

关于node.js - 在 ExpressJs 中设置 Cookie 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36166564/

38 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com