Meine Frage ist ähnlich wie diese ein , aber es gab keinen Einblick in seine Lösung.
Ich verwende Passport, um über Instagram zu authentifizieren. Nach erfolgreicher Authentifizierung werden Benutzer zu "/" weitergeleitet. Zu diesem Zeitpunkt hat die Anforderung das Benutzerobjekt (auch bekannt als es funktioniert). Sobald ich jedoch umleitung, ist der req.user undefiniert. : '(
Der seltsame Teil ist, dass passport.deserializeUser bei jeder Anforderung aufgerufen wird. Das Benutzerobjekt wird erfolgreich abgerufen, aber irgendwo auf der Middleware-Straße wird req.user nicht festgelegt (oder nicht festgelegt).
// on successful auth, goto "/"
app.get('/', function(req, res) {
// if the request has the user object, go to the user page
if (req.user) {
res.redirect("/user/" + req.user._id);
}
res.render("index");
}
app.get('/user/:uid', function(req, res) {
console.log(req.user) // undefined
}
app.use(...)
Besonders Middleware ( ). Es kann sein, dass Ihre Sitzungscookies einen zu geringen Ablauf haben oder dass die Reihenfolge der Middleware falsch ist.