2014-04-27 35 views
0

我已经设置了与Facebook战略(只是facebook策略)Passport,并设置检查用户是否存在函数来保存Mongodb中的用户集合内的用户。 我扔console.log成功保存在数据库中,我可以看到用户已成功保存在集合(我可以看到它也在数据库本身与终端成功保存到数据库后护照重定向到登录页面

但问题是,成功注册后passport.authenticate功能带我到登录页面,而不是在“getusergames页面。 任何想法,为什么会这样?

function(accessToken, refreshToken, profile, done) { 
    // Checking if this user is already in DB and if no, Add this user to DB 
    insertUser.findOne({facebook_id: profile.id}, function(err, user) { 
     // Print Error 
     if (err) { 
      return done(err); 
     } 
     // Save new user if there is no user exists 
     if (!user) { 
      var userId = profile.id; 
      var userToken = accessToken; 
      var user_name = profile.displayName; 
      var newuser = new insertUser({ 
       username: user_name, 
       facebook_id: userId, 
       facebook_token: userToken 
      }); 
      newuser.save(function(err) { 
       if (err) { 
        console.log(err); 
       } else { 
        console.log('New User has Saved!'); 
        done(null, user); 
       } 
      }); 
     } 
     // If there is a user, Return his object and done. 
     else if (user) { 
      done(null, user); 
     } 

    }); 
} 

回答

0

所以,问题是,我没有之前done(null, user);

return
相关问题