Session lifetime in node.js with express and MongoDB
Your question is a little vague but from what i can gather you wan't to set the expiration period for the session:
you can use maxAge
like so:
app.use(express.cookieParser());app.use(express.session({ secret : "Stays my secret", maxAge : new Date(Date.now() + 3600000), //1 Hour expires : new Date(Date.now() + 3600000), //1 Hour store : new MongoStore({ db: 'myDB' })}));
expires
value is required for new versions of express where as maxAge
is for older versions, you should only need expires
though.
@RobertPitt edit your answer.Cookie (session) object looks like:
{ "cookie":"originalMaxAge":null,"expires":null,"httpOnly":true,"path":"/"}, "your_var_1":"value 1", "your_var_2":"value 2", ...}
Argument for express.session
should look like this (it's in documentation):
app.use(express.session({ secret : "Stays my secret", cookie: { maxAge : new Date(Date.now() + 3600000), //1 Hour expires : new Date(Date.now() + 3600000), //1 Hour }, store : new MongoStore({ db: 'myDB' })}));
Moreover this:
maxAge : new Date(Date.now() + 3600000), //1 Hour
will cause that every cookie (here also session) will be expired automatically one hour after server start