Я работаю над проектом, встроенным в стек MERN, и использую паспорт для аутентификации.Недавно я добавил сертификат SSL в свое приложение heroku и в мое новое развернутое приложение. Если я пытаюсь войти в систему с помощью Google OAuth, страница становится пустой, и мне нужно выполнить Ctrl + F5 (полное обновление), чтобы отобразить страницу входа в Google.,То же самое касается URL обратного вызова.В консоли нет сообщений об ошибках.Есть ли у вас какие-либо предложения или идеи, в чем может быть проблема?
Проблема только с версией https, а не на моем локальном или http-версии, поэтому проблема связана с использованием https
Это мой код в config / passport.js.
passport.serializeUser((user, done) => {
done(null, user.id);
});
passport.deserializeUser((id, done) => {
User.findById(id).then(user => {
done(null, user);
});
});
passport.use(
new GoogleStrategy(
{
clientID: keys.googleClientID,
clientSecret: keys.googleClientSecret,
callbackURL: "/auth/google/callback",
proxy: true
},
(accessToken, refreshToken, profile, done) => {
console.log("got to authenticate for google");
User.findOne({ googleId: profile.id }).then(existingUser => {
if (existingUser) {
console.log("exists");
done(null, existingUser);
} else {
new User({
username: profile.displayName,
firstName: profile.name.givenName,
lastName: profile.name.familyName,
email: profile.emails[0].value,
googleId: profile.id
})
.save()
.then(user => done(null, user));
}
});
}
)
);
Это мой код в authRoute.js
app.get(
'/auth/google/',
passport.authenticate(
'google',
{ scope: ['profile', 'email'] }
)
);
//passport middleware takes over at callback URL,
//then redirect the route to '/surveys'
app.get(
'/auth/google/callback/',
passport.authenticate('google'),
(req, res) => {
res.redirect('/forum');
}
);