如何通过express-session在node.js上设置持久性cookie?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何通过express-session在node.js上设置持久性cookie?相关的知识,希望对你有一定的参考价值。
我想创建现有的Cookie,以便我的应用程序用户不必每次进入网络都必须登录。但是,如果他/她曾经注销过,只需要登录即可。基本上,我想知道是否有一种方法可以将maxAge设置为infinity(等效),并且即使用户关闭了浏览器,cookie也可以保留。这是我的代码:
app.use(expressSession({
secret: '',
resave: false,
saveUninitialized: false,
cookie: {
secure: false,
expires: false,
}
}))
基于标准,您不能将其设置为无穷大:
Max-Age =值可选的。 Max-Age属性的值是delta-seconds,Cookie的生存时间(以秒为单位),十进制非负数整数。为了正确处理缓存的cookie,客户端应该根据年龄计算来计算Cookie的年龄HTTP / 1.1规范[RFC2616]中的规则。当年龄是大于delta-seconds秒的时间,客户端应丢弃曲奇饼。零值表示该Cookie应该被丢弃立即。
http://www.faqs.org/rfcs/rfc2965.html
但是您也可以将年龄安全地设置为5岁或10年。到那时,用户很可能会摆脱他的设备/ PC /移动设备。 :)
以上是关于如何通过express-session在node.js上设置持久性cookie?的主要内容,如果未能解决你的问题,请参考以下文章
Node.js express-session 代理选项有啥作用?
node的cookie-parser和express-session
Node.js、Angular、express-session:由于 cookie 策略(sameSite cookie),Chrome 80 不保存会话