При использовании facebook-паспорта обычной задачей является указать redirect_uri
в конструкторе FacebookStrategy, который вы используете, примерно так:
passport.use("facebook", new FacebookStrategy({
//TODO: Correctly configure me
clientID: "XXXXXXX"
, clientSecret: "XXXXXXXXX"
, callbackURL: "http://localhost:3007/auth/facebook/callback"
},
function(accessToken,refreshToken,profile,done) {
User.findByFacebookId(profile.id, function(err,user) {
if(err){ return done(err);}
if(!user){ return done(null,false)}
return done(null, user);
});
})
);
Затем вы должны настроить маршруты следующим образом:
app.get('/auth/facebook/login', passport.authenticate('facebook') );
app.get('/auth/facebook/login_callback', passport.authenticate('facebook', {
successRedirect:"/login_ok.html"
, failureRedirect:"/login_failed.html"
}
))
Можно ли изменить URL-адрес обратного вызова, чтобы он содержал информацию из параметров, переданных на начальный логин?
ПРИМЕЧАНИЕ. Этот вопрос больше подходит для сохранения информации, которая занимала меня некоторое время, чтобы выработать, чтобы другие не сходили по тем же путям.