I'm using nodejs (expressjs) hosted on heroku.
Sessions are stored in redis (Redistogo plugin for heroku):
RedisStore = require('connect-redis')(express)
app.use express.session
secret: process.env.CLIENT_SECRET
cookie: { maxAge: 604800000 }
store: new RedisStore {client: redis}
After user logged in I store his info in req.session
after_user_logged_id = (req, user)->
req.session.current_user =
id: user._id
name: user.name
I need to restart server and clean all sessions: logout all users to force them login one more time. How should I do this ? Restarting redis plugin doesn't help.
redis.flushdb() may be a bit extreme if you end up storing something else in redis. You just need to delete all the "sess:*" keys. Unfortunately, there is no del *, so you can use something like this:
redis.keys("sess:*", function(err, key) {
redis.del(key, function(err) {
});
});
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With