我正在尝试在快递框架中设置一个cookie,但它没有通过,而对于我的生活,我无法弄清楚为什么。相关代码如下所示:
module.exports = function(app) {
return function(req, res, next) {
if (req.cookies.user_token) {
req.session.cookie.httpOnly = false
res.cookie('user_token', req.cookies.user_token, { domain: 'www.example.com', httpOnly: false, path: '/', maxAge: 900000 });
}
return res.redirect('https://www.example.com/index.jsp?other_stuff=value');
}
}
我可以看到请求已经发出,并且该cookie未被设置。我已经使用了调试器,我确信代码已经被击中了。
我发现了这个问题:
How to set cookie in node js using express framework?
基于此,我尝试在代码中提前调用var express = require('express'); app.use(express.cookieParser());
,但似乎没有任何区别。
任何人都有任何想法,我在这里出错?
答案 0 :(得分:1)
如果重定向的域(例如,www.example.com
)(正如评论中所示)与尝试设置Cookie的域(例如www.foo.io
)不同,则Cookie不会受到浏览器的尊重。