相关疑难解决方法(0)

使用passport-facebook从Facebook检索照片

我可以通过passport-facebook检索基本用户信息,按照以下代码并保存在mongodb中:

app.get("/auth/facebook", passport.authenticate("facebook", { scope : ["email", "publish_stream", "user_location", "user_hometown", "user_birthday", "read_friendlists"]}));

app.get("/auth/facebook/callback", passport.authenticate("facebook",{ successRedirect: '/', failureRedirect: '/'}));

var mongoose = require('mongoose'), 
FacebookStrategy = require('passport-facebook').Strategy, 
Users = mongoose.model('Users');

module.exports = function (passport, config) { 
passport.serializeUser(function(user, done) { 
    done(null, user.id);
}); 

passport.deserializeUser(function(id, done) { 
    Users.findOne({ _id: id }, function (err, user) { 
        done(err, user); 
    });
});

passport.use(new FacebookStrategy({ 
    clientID: config.facebook.clientID,
    clientSecret: config.facebook.clientSecret,
    callbackURL: config.facebook.callbackURL 
}, function(accessToken, refreshToken, profile, done) { 
    Users.findOrCreateFaceBookUser(profile, done);
}));};
Run Code Online (Sandbox Code Playgroud)

但是,我无法在"个人资料"中看到个人资料图片.

文档https://github.com/jaredhanson/passport-facebook说要检索我们需要传递profileFields的照片,如下所示.但是这样做,我能够看到照片网址,但却丢失了_json中包含的其他数据,例如profile._json.location.name.如何检索包含其他用户信息的照片?

passport.use(new FacebookStrategy({
// clientID, …
Run Code Online (Sandbox Code Playgroud)

node.js express passport-facebook passport.js

16
推荐指数
3
解决办法
1万
查看次数

Facebook iOS SDK和passport-facebook身份验证

我正试图在iOS Facebook SDK应用程序上使用passport-facebook实现服务器facebook身份验证,我不清楚如何在后端设置护照身份验证.

基本上iOS客户端使用Facebook进行身份验证并获取sessionToken,我想将其传递给passport-facebook/auth/facebook/callback以使用FB验证会话令牌,并通过node.js从我们的数据库中查找用户.

这是使用passport-facebook的正确方法,还是需要call/auth/facebook(我需要传递什么参数).

这个问题提到使用Facebook iOS SDK构建应用程序,然后在服务器上进行身份验证,但没有提到具体如何做到这一点.

https://github.com/jaredhanson/passport-facebook/issues/7

我还可以编写自己的自定义护照策略,简单地传递FB会话令牌,我可以验证服务器上的FB图形API以获取FB用户ID并验证它是有效会话,如下所述: 设计用于Facebook身份验证也可以访问安全Web服务的iOS应用程序

facebook node.js ios passport.js

13
推荐指数
1
解决办法
4158
查看次数