【问题标题】:NodeJS authentication with passport using facebook strategy使用 facebook 策略使用护照进行 NodeJS 身份验证
【发布时间】:2015-01-07 07:29:12
【问题描述】:

我正在使用 NodeJS 开发一个项目,我想使用用户名/密码或使用 facebook 登录。我搜索并发现有一个名为 http://passportjs.org/ 的 NodeJS 模块,它为不同的社交平台(facebook、twitter 等)集成了不同的策略。

登录后,我还想访问有关用户的不同信息,例如朋友列表、在他们的墙上发帖的可能性等等。据我所知,facebook 的护照策略不支持这一点。

我的第二个选择是使用 https://github.com/amachang/facebook-node-sdk 。这让我可以登录,还可以获取好友列表、在用户墙上发帖等。

可以同时使用吗?使用 facebook 策略从护照登录,然后将令牌传递给 facebook sdk api 以将其用于在用户墙上发布。

什么是最好的方法?您如何看待与 facebook 的整合?

非常感谢您的回答

【问题讨论】:

    标签: node.js facebook login sdk passport.js


    【解决方案1】:

    事实上,护照确实支持这一点。您可以像这样在范围对象中指定权限

    app.get('/auth/facebook',
    passport.authenticate('facebook', { scope: ['read_stream', 'publish_actions'] })
    );
    

    passport docs 中提到了这一点。 Here 是您可以从 Facebook 实际请求的权限列表。

    【讨论】:

    • 非常感谢您的帮助。我不知道。您能告诉我如何使用护照来执行不同的操作,例如在用户的墙上写字或获取朋友列表吗?我会很感激的。再次感谢
    • @SilVeRAleCS 使用护照,您可以获得具有权限的令牌,以获取用户朋友列表或在他们的墙上写字。获得访问令牌后,您应该使用 facebook api 或节点 facebook sdk 来实际执行这些操作。
    • 超级有帮助。谢谢! Graph API Explorer 其实解释了这个指定权限的概念,然后很好的从端点请求数据:developers.facebook.com/tools/explorer
    猜你喜欢
    • 2020-04-20
    • 2016-01-19
    • 2018-11-24
    • 2017-03-21
    • 1970-01-01
    • 1970-01-01
    • 2016-10-02
    • 2016-12-26
    • 2015-09-10
    相关资源
    最近更新 更多