具有RedisStore会话超时的Node.JS

时间:2011-12-29 22:16:24

标签: node.js heroku redis

我正在使用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'
      })})
);

2 个答案:

答案 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过期。