私はherokuでホストされているnodejs(expressjs)を使用しています。Nodejs(heroku + redis)のすべてのセッションを消去するには?
セッションはRedisの中で(HerokuのためRedistogoプラグイン)に格納されています。私にはログインしているユーザーがreq.session
after_user_logged_id = (req, user)->
req.session.current_user =
id: user._id
name: user.name
で彼の情報を格納し
RedisStore = require('connect-redis')(express)
app.use express.session
secret: process.env.CLIENT_SECRET
cookie: { maxAge: 604800000 }
store: new RedisStore {client: redis}
後、私はすべてのサーバーとクリーンを再起動する必要がありますセッション:すべてのユーザーをログアウトしてもう一度ログインさせる。私はこれをどのようにするべきですか? redisプラグインを再起動しても問題ありません。
あなた自身で、コードで実装できます。将来セッションで何かをアップグレード/変更する必要がある場合は、持っているとよいでしょう。私が提案しているのは、いくつかのプロパティの存在をチェックし、それ以外の場合はセッションを破棄して、ユーザーにログインさせ、その時点でプロパティを設定することです。何かのように: 'if(session.version <1){session.destroy()}'。 –
私はそれをapp.configure() - > app.use(req、res、next) - > session_logicに入れてください。 –
はい、そこに置くことができますし、おそらくあなたのログインページに 'res.redirect()'したいでしょう。 –