node.js Express の Passport モジュールを使用して、訪問者が Facebook 経由でログインした後、リダイレクトを正常に取得しました。以下は私のコードの一部です:
app.use(passport.initialize());
app.use(passport.session());
passport.use(new FacebookStrategy({
clientID: '999999999999999',
clientSecret: 'ffffffffffffffffffffffffffffffff',
callbackURL: 'https://xxxxxxxxx.com/auth/facebook/callback'
}, function(accessToken, refreshToken, profile, done) {
process.nextTick(function() {
done(null, profile);
});
}));
app.get('/auth/facebook', passport.authenticate('facebook'));
app.get('/auth/facebook/callback', passport.authenticate('facebook', {
successRedirect: '/register?provider=facebook',
failureRedirect: '/',
failureFlash: true
}));
passport.serializeUser(function(user, done) {done(null, user);});
passport.deserializeUser(function(obj, done) {done(null, obj);});
私の質問は次のとおりです。セッションをどのように覚えていますか? .nextTick() 関数から値を渡す方法はないようです。また、Cookie を登録することもできません...