ske*_*rit 8 cookies google-chrome node.js express
我一直在尝试使用Express 3.0在Node.js中设置我的cookie的到期日期,但没有任何工作.
我的第一次尝试:
res.cookie('user', user, { maxAge: 9000, httpOnly: true });
Run Code Online (Sandbox Code Playgroud)
根据Chrome,只是以cookie无效,到期时间结束.然后我尝试设置'expires',如下所示:
res.cookie('user', user, { expires: new Date(new Date().getTime()+5*60*1000), httpOnly: true });
Run Code Online (Sandbox Code Playgroud)
现在我的cookie只是一个会话cookie.
有谁知道如何解决这一问题?
您必须使用req.session.cookie:
req.session.cookie.expires = false;
req.session.cookie.maxAge = 5 * 60 * 1000;
Run Code Online (Sandbox Code Playgroud)
另请参阅connect docs。
接受的答案对我不起作用..但原始问题的版本确实有效。例如
var language = 'en';
//10 * 365 * 24 * 60 * 60 * 1000 === 315360000000, or 10 years in milliseconds
var expiryDate = new Date(Number(new Date()) + 315360000000);
this.__res.cookie('lang', language, { expires: expiryDate, httpOnly: true });
Run Code Online (Sandbox Code Playgroud)
请注意,maxAge以毫秒为单位-
res.cookie('jwtToken', token, { maxAge: 2 * 60 * 60 * 1000, httpOnly: true }); // maxAge: 2 hours
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13029 次 |
| 最近记录: |