0
當我撥打passport.authenticate('facebook');
時,頁面會一直加載,並會因超時而失敗。 facebook身份驗證屏幕從不出現。任何線索我犯了什麼錯誤?Passport Facebook身份驗證不會顯示Facebook身份驗證屏幕
以下是我的代碼片段。
var User = require('../models/user.js'),
passport = require('passport'),
FacebookStrategy = require('passport-facebook').Strategy;
passport.use(new FacebookStrategy({
clientID: 'appId-XXX',
clientSecret: 'appSecret-xxx',
callbackURL: 'https://xxx/auth/facebook/callback'
},
function(accessToken, refreshToken, profile, done) {
process.nextTick(function() {
var authID = 'facebook' + profile.id;
User.findOne({
authId: authID
}, function(err, user) {
if (err) return done(err, null);
if (user) return done(null, user);
user = new User({
authID: authID,
name: profile.displayName,
created: Date.now(),
role: 'customer'
});
user.save(function(err) {
if (err) return done(err, null);
done(null, user);
});
});
});
}));
app.use(passport.initialize());
app.use(passport.session());
app.get('/auth/facebook', function(req, res, next) {
console.log('Calling Facebook Authenticate');
passport.authenticate('facebook');
});
app.get('/auth/facebok/callback', passport.authenticate('facebook', {
successRedirect: options.successRedirect,
failureRedirect: options.failureRedirect
}));
將其更改爲'passport.authenticate(的Facebook')(REQ,水庫,下一個);'在'/ auth /中facebook'路線 – laggingreflex 2014-10-26 18:25:02
@laggingreflex非常感謝它的工作原理。請將其作爲回答發佈... – Muthukumar 2014-10-27 15:07:14