I feel like this has to be buried somewhere in the documentation, but I can\'t find it.
How do you close or end or kill (whatever) a session in ExpressJS?
Using req.session = null;
, won't actually delete the session instance. The most proper solution would be req.session.destroy();
,
but this is essentially a wrapper for delete req.session;
.
https://github.com/expressjs/session/blob/master/session/session.js
Session.prototype.destroy = function(fn){
delete this.req.session;
this.req.sessionStore.destroy(this.id, fn);
return this;
};
As mentioned in several places, I'm also not able to get the req.session.destroy() function to work correctly.
This is my work around .. seems to do the trick, and still allows req.flash to be used
req.session = {};
If you delete or set req.session = null; , seems then you can't use req.flash
From http://expressjs.com/api.html#cookieSession
To clear a cookie simply assign the session to null before responding:
req.session = null