0
私がログアウトした後、私はパスポート/エクスプレスセッションを完全に破壊する方法は?
req.isAuthenticated()
戻り偽をチェック
req.session.destroy();
req.logout();
req.logOut();
を試してみました。
しかし、私は再び/ログインに行く場合は、ログインフォームに私を取ることなく、同じユーザーでくれの認証を自動的にます。
私はORCIDに接続するパスポートにOAuth2Strategy戦略を使用しています。セッションを完全に破棄したいので、再度ログインしたい場合は別のユーザーとやりとりすることができます。
これは私がそれを持ってどのようにセットアップされている:私は私の成功の結果を返すまで/ログアウトルートが好きで、私はにログインしようとする次回ということでしょうので、私はSPAを構築しています
app.use(session({
secret: 'secret,
saveUninitialized: 'true',
resave: 'true'
}));
app.use(passport.initialize());
app.use(passport.session());
passport.serializeUser((user, done) => {
done(null, user);
});
passport.deserializeUser((user, done) => {
done(null, user);
});
passport.use(new OAuth2Strategy({
scope: '/authenticate',
authorizationURL: '',
tokenURL: '',
clientID: '',
clientSecret: '',
callbackURL: '',
passReqToCallback: true
},
(req, accessToken, refreshToken, params, profile, cb) => {
cb(null, data);
}
));
私はクッキーか何かを推測することに基づいて私を認証する代わりに私をフォームに連れて行きます。
どうすればこの問題を解決できますか?