Sto usando nodejs (expressjs) ospitato su heroku.Come pulire tutte le sessioni in Nodejs (heroku + redis)?
sessioni vengono memorizzati in Redis (Redistogo plug-in per Heroku):
RedisStore = require('connect-redis')(express)
app.use express.session
secret: process.env.CLIENT_SECRET
cookie: { maxAge: 604800000 }
store: new RedisStore {client: redis}
Dopo utente connesso devo conservare le sue informazioni in req.session
after_user_logged_id = (req, user)->
req.session.current_user =
id: user._id
name: user.name
ho bisogno di riavviare il server e pulire tutto sessioni: disconnetti tutti gli utenti per costringerli ad accedere ancora una volta. Come dovrei farlo? Il riavvio del plugin redis non aiuta.
Si potrebbe implementare da soli, nel codice. Potrebbe essere una buona caratteristica avere, se è necessario aggiornare/modificare qualcosa nella sessione in futuro. Quello che suggerisco è di verificare l'esistenza di alcune proprietà, e in caso contrario distruggere la sessione, costringendo l'utente ad accedere, a quel punto si imposta la proprietà. Qualcosa come: 'if (session.version <1) {session.destroy()}'. –
dovrei metterlo in app.configure() -> app.use (req, res, next) -> session_logic? –
Sì, puoi metterlo lì e probabilmente vuoi anche 'res.redirect()' alla tua pagina di login. –