Итак, когда я впервые запустил приложение вчера, экран аутентификации появился как обычно. С тех пор, даже после удаления себя из моей базы данных mongodb, окно аутентификации не появляется.
Я искал решение, но ни одно не помогло. Я также очистил свои куки, тоже не сработало.
Буду очень признателен за любые ваши идеи!
auth-rout.js
router.get("/facebook", passport.authenticate("facebook", ({ display: 'popup' })));
router.get("/facebook/callback",
passport.authenticate("facebook", {
failureRedirect: "/auth/login"
}), (req, res) => {
res.redirect("/")
}
);
profile-rout.js
const authCheck = (req, res, next) => {
if(!req.user) {
res.redirect("/auth/login")
} else {
next();
}
}
passport-setup.js
passport.serializeUser((user, done) => {
done(null, user.id)
});
passport.deserializeUser((id, done) => {
User.findById(id).then((user) => {
done(null, user.id)
})
});
passport.use("facebook", new FacebookStrategy({
clientID: process.env.clientID,
clientSecret: process.env.clientSecret,
callbackURL: "http://localhost:3000/auth/facebook/callback"
}, (accessToken, refreshToken, profile, done) => {
User.findOne({ userID: profile.id }, (err, user) => {
if(user) {
console.log("Already a user");
done(null, user)
} else {
new User ({
userID : profile.id,
userName : profile.displayName
}).save().then((newUser) => {
console.log(" ")
console.log("New user created! ===> ")
console.log(newUser);
done(null, user);
})
}
})
}))
сервер. JS
app.use(passport.initialize());
app.use(passport.session());
app.use("/auth/", authRoutes);
app.use("/profile/", profileRoutes);