Cookie maxAge和expiry之间有什么区别

时间:2014-04-21 12:06:17

标签: node.js cookies express

我在NodeJS,Express应用程序上我正在使用cookie来实现我的应用程序的某些功能。我需要将cookie生命设置为一个月。

出于这个目的,我已将Cookie maxAge设置为days*hoursPerDay*minutesPerHour*secondsPerMinute*1000,以实现一个月的时间30*24*60*60*1000 = 2592000000

然而,在浏览器中我的cookie到期时间接近10小时。

我缺少什么,我的计算错了?或者我使用了错误的属性(maxAge)?

Cookie的maxAgeexpiry属性之间有什么区别?

2 个答案:

答案 0 :(得分:0)

maxAge应该以毫秒为单位设置(我错了,因为我提到客户端部分) https://developer.mozilla.org/en-US/docs/Web/API/document.cookie

你在下面设置苦力吗?

res.cookie('rememberme','1',{maxAge:900000,httpOnly:true}) http://expressjs.com/api.html#res.cookie

答案 1 :(得分:0)

据我所知,maxAge不会保存cookie的规格 正如Don't trust Cookie setMaxAge所示,maxAge的机制类似于 更改/操纵Cookie的过期日期(基于SERVER_SIDE),但浏览器根据CLIENT_SIDE检查Cookie的过期日期
从我的角度来看,这是不当行为。因为为了使max-age按预期工作,所以应同步客户端/服务器DateTime。