我已经使用快递js和passport-Facebook在我的网站上实现了Facebook-LogIn.它运作良好(我获得现场简介),但问题是我没有收到电子邮件.我收到一个错误:
email : profile.emails[0].value,
Run Code Online (Sandbox Code Playgroud)
TypeError:无法读取未定义的属性"0"
我的代码:
passport.use('facebook',new FacebookStrategy({
clientID : config.facebook.id,
clientSecret : config.facebook.secret,
callbackURL : '/auth/facebook/callback',
profileFields : ['id', 'displayName', 'emails','photos']
}, function(accessToken, refreshToken, profile, done) {
User.findOne({provider_id: profile.id}, function(err, user) {
if(err) throw(err);
if(!err && user!= null) return done(null, user);
var user = new User({
provider_id : profile.id,
name : profile.displayName,
email : profile.emails[0].value,
photo : profile.photos[0].value,
});
user.save(function(err) {
if(err) throw err;
return done(null, user);
});
});
}));
Run Code Online (Sandbox Code Playgroud)
如果有人可以帮我解决我的问题,那将会很棒:)
我尝试使用Visual Studio Code在节点JS中调试项目,但我没有实现.我用下一个命令构建了一个简单的项目:
表达myExpressApp cd myExpressApp npm install npm start我的文件launch.json:

我在Window"Debug"中选择选项"Launch app.js".应用程序运行没有问题.我提出了一个断点:
我在Chrome中给出了地址:http:// localhost:3000 /
Visual Studio Code说:"在断点暂停",但我什么也看不见,我可以按继续,应用程序继续...

编辑:我使用OS X 10.10(我测试了它,它在Ubuntu中完美运行.)