无法使用Express 3.0在Node.js中设置cookie的“expires”或“maxAge” [英] Can't set cookie 'expires' or 'maxAge' in Node.js using Express 3.0

查看:1053
本文介绍了无法使用Express 3.0在Node.js中设置cookie的“expires”或“maxAge”的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我一直在尝试使用Express 3.0在Node.js中设置我的cookie的到期日期,但没有什么工作。

I've been trying to set my cookie's expiry date in Node.js using Express 3.0, but nothing is working.

我的第一次尝试:

res.cookie('user', user, { maxAge: 9000, httpOnly: true });

根据Chrome结束于具有无效到期时间的Cookie。
然后我尝试设置expires,如下:

Just ends in a cookie that has an invalid expiry time according to Chrome. Then I tried to set 'expires' instead, like so:

res.cookie('user', user, { expires: new Date(new Date().getTime()+5*60*1000), httpOnly: true });

现在我的cookie只是一个会话cookie。

And now my cookie is just a session cookie.

有人知道如何解决这个问题吗?

Does anyone know how to fix this?

推荐答案

您必须使用 req.session .cookie

req.session.cookie.expires = false;

req.session.cookie.maxAge = 5 * 60 * 1000;

另请参阅 connect docs

这篇关于无法使用Express 3.0在Node.js中设置cookie的“expires”或“maxAge”的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆