passport.authenticate('facebook')方法不能调用+ NodeJS

时间:2017-10-18 09:12:03

标签: javascript node.js facebook authentication passport-facebook

我有一个NodeJS项目,我必须使用facebook app登录。

我正在关注http://mherman.org/blog/2013/11/10/social-authentication-with-passport-dot-js/#.WecMnhOCw3h链接,如果我遇到了演示项目,它运行正常。

但是在我的项目中,它会出错 - undefined不是函数

下面的

是我的user.js代码 -

  

var passport = require('passport');   var config = require('./ oauth.js');

  var facebookStrategy = require('passport-facebook').Strategy;
 passport.serializeUser(function(user, done) {
     delete user.password;
     done(null, user);
 });

 passport.deserializeUser(function(obj, done) {
     done(null, obj);
 });

 passport.use(new facebookStrategy({
         clientID: config.facebook.clientID,
         clientSecret: config.facebook.clientSecret,
         callbackURL: config.facebook.callbackURL,

         passReqToCallback: true
     }, function(accessToken, refreshToken, profile, done) {
         process.nextTick(function() {
             return done(null, profile);
         });
     }

 ));

 router.get('/auth/facebook', passport.authenticate('facebook'));
 router.get('/auth/facebook/callback',
     passport.authenticate('facebook'),
     function(req, res) {
         res.redirect('/');
     });

请帮我解决我的问题,google plus登录时出现同样的错误“未定义不是函数”。

0 个答案:

没有答案