我正在使用 Redis 在我的 node.js 应用程序中存储 session ,该应用程序托管在 heroku 上,但 Redis 正在保存 session ,我如何让它们自动过期?
我的 express 应用是这样配置的:
var app = express.createServer(
express.static(__dirname + '/public', { maxAge: 31557600000 }),
express.cookieParser(),
express.session({ secret: 'secret', store: new RedisStore({
host: 'myredishost',
port: 'port',
pass: 'myredispass',
db: 'dbname'
})})
);
最佳答案
正如 Connect session 中间件文档所述,您需要在 cookie 对象上设置 maxAge 属性:
express.session({ secret: 'secret', store: ..., cookie: { maxAge: 60000 }});
在这里阅读更多相关信息:http://senchalabs.github.com/connect/middleware-session.html
关于具有 RedisStore session 超时的 Node.JS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8674138/