我正在使用Redis在我的node.js应用程序中存储会话,这些应用程序在heroku上托管,但redis会保存会话,如何让它们自动过期?
我的快递应用程序是这样配置的:
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'
})})
);
答案 0 :(得分:5)
当Connect会话中间件文档声明时,您需要在cookie对象上设置maxAge属性:
express.session({ secret: 'secret', store: ..., cookie: { maxAge: 60000 }});
在此处详细了解:http://senchalabs.github.com/connect/middleware-session.html
答案 1 :(得分:1)
如果您使用的是req.session.cookie.maxAge,它们将根据Cookie过期。