在Node.js Express / Connect中,有没有办法将会话设置为无穷大?

我是这样做的:

app.use(express.session({ cookie:{domain:"."+settings.c.SITE_DOMAIN}, secret:'abc', store: redis_store, })); 

当我login到我的redis并键入TTL sess:... ,似乎这个会话有一个到期。

我怎样才能使会议永不过期? (一切)。 我也希望cookies永不过期。

如会话中间件页面上的连接指南 (Express在内部使用Connect)中所述,您可以在会话中指定maxAge选项:

  • cookie会话cookie设置,默认为{path:'/',httpOnly:true,maxAge:14400000}

例:

 connect( connect.cookieParser() , connect.session({ secret: 'keyboard cat', cookie: { maxAge: 60000 }}) , connect.favicon() , function(req, res, next){ var sess = req.session; if (sess.views) { res.setHeader('Content-Type', 'text/html'); res.write('<p>views: ' + sess.views + '</p>'); res.write('<p>expires in: ' + (sess.cookie.maxAge / 1000) + 's</p>'); res.end(); sess.views++; } else { sess.views = 1; res.end('welcome to the session demo. refresh!'); } } ).listen(3000); 

注意:maxAge以毫秒为单位,例如一天= 86400000