0
I以下のミドルウェア機能を持っている:なぜ(パスポート)app.getとミドルウェア機能の火が、app.postない
これは、次のGETルートでうまく動作しますfunction isLoggedIn(req, res, next) {
if (req.isAuthenticated()) {
console.log('***User is logged in***');
next();
} else {
res.redirect('/');
console.log('***User IS NOT logged in***');
}
}
:
app.get('/profile', isLoggedIn, function(req, res) {
res.render('profile.ejs', {
user: req.user // get the user out of session and pass to template
});
});
app.post('/add', isLoggedIn, function(req, res) {
console.log('Success');
});
なぜ:私はPOSTルートにisLoggedIn機能をプラグインしようとすると、
はしかし、それは発生しません私の関数はapp.postで機能しませんが、app.getで起動します。
コードのres.redirect部分に到達することさえできず、関数はPOSTリクエストではまったく起動しません。 app.postを上記のルート(/ add)のapp.getに変更することができ、isLoggedIn関数が起動します(コンソールにメッセージが表示されます)。 .postに戻すと、関数はもはや起動しません。 – mthelm85