Passport.authenticate, кажется, удаляет заголовок частичного - PullRequest
0 голосов
/ 08 января 2020

Я пытаюсь создать раздел аутентификации с NodeJS, Express и Пн goose.

Я использую passport-local-passport-local-mon goose.

Изначально я думал, что это может быть связано с express -сессией, поэтому я попытался заменить эту сессию cook ie, но без игры в кости.

После аутентификации вновь зарегистрированного пользователя и перенаправления его на приборной панели, приборная панель не отображается должным образом. Вроде как заголовок у меня как частичный не входит. Стили не применяются, и сценарий, включенный в нижний колонтитул, выдает ошибку в строке 1 -> $ не определено.

Я настроил приложение. js Файл с:

app.use(passport.initialize());
app.use(passport.session());

У меня есть это в моей пользовательской схеме:

userSchema.plugin(passportLocalMongoose, {
usernameField : "email"
});

И я поместил это в свой пользовательский маршрут: (Он также был в файле приложения. js, но с тот же результат)

passport.use(User.createStrategy());
passport.serializeUser(User.serializeUser());
passport.deserializeUser(User.deserializeUser());


.
.
} else {
passport.authenticate("local")(req, res, function() {
                res.redirect(req.user.email)
            })
.
.

если я выполняю res.redirect (req.user.email) без аутентификации пользователя, который страница отображает так, как должно, это говорит мне о том, что скорее всего что-то с passport.authenticate () вызывает это.

Любые предложения будут оценены. Дайте мне знать, если мне нужно включить больше, но я старался быть как можно меньше, так как есть много вещей, которые не имеют отношения к этой проблеме.

1 Ответ

0 голосов
/ 11 января 2020

Наконец-то нашел причину такого поведения. Я установил req.user в res.locals.currentUser и использовал его в разделе заголовка тела. Не уверен, почему это сейчас не работает, потому что раньше у меня это работало ... Может быть, это как-то связано с E JS, но в любом случае, после удаления некоторых ненужных частей, оно снова работает.

...