我正在使用 Sails.js 构建一个 API。对于会话存储,我使用的是 redis。好玩的东西!
Set-Cookie 响应标头包含
sails.sid=<sessionID>; Path=/; HttpOnly
快速应用程序中的简单事情,但我很难为该 Cookie 设置过期值。有人知道吗?
顺便给redis设置ttl没有任何作用。
我自己找到了上述问题的答案。只需添加
cookie: {
maxAge: 60 * 60 * 1000 // example: 60 mins in miliseconds
}
到您的sails.js config/session.js 文件。
如果应用程序在代理/反向代理 (nginx) 后面运行,并且您想为 cookie 设置一个安全标志,只需修改:
config/session.js并添加以下行:
proxy: true,
cookie: {
secure: true
}
您可以在控制器中使用此代码来设置 cookie 过期时间
res.cookie('rememberme', '1', { expires: new Date(Date.now() + 900000), httpOnly: true });