栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Passport.js:password-facebook-token策略,通过JS SDK登录,然后对护照进行身份验证?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Passport.js:password-facebook-token策略,通过JS SDK登录,然后对护照进行身份验证?

我本周花了几天时间,试图找出使用私有密码的Facebook身份验证的最佳方法,即使用passport.js-护照-facebook-令牌非常适合此操作。

您以为这是两种单独的身份验证策略是正确的。您不需要安装password-facebook即可使用passport-facebook-token。

如果您在客户端JS(或iOS等)中实现了Facebook身份验证,并且正在寻找一种使用用户的Facebook
authToken对API请求进行身份验证的方法,那么passport-facebook-token是一个非常好的解决方案。

Passport-facebook-token的工作原理完全独立于password-
facebook,并且在将请求传递给您的控制器之前,基本上处理了Facebook内部所需的重定向。

因此,要使用passport-facebook-token对API路由进行身份验证,您需要按照以下方式设置护照策略:

passport.use('facebook-token', new FacebookTokenStrategy({    clientID        : "123-your-app-id",    clientSecret    : "ssshhhhhhhhh"  },  function(accessToken, refreshToken, profile, done) {    // console.log(profile);    var user = {        'email': profile.emails[0].value,        'name' : profile.name.givenName + ' ' + profile.name.familyName,        'id'   : profile.id,        'token': accessToken    }    // You can perform any necessary actions with your user at this point,    // e.g. internal verification against a users table,    // creating new user entries, etc.    return done(null, user); // the user object we just made gets passed to the route's controller as `req.user`  }));

值得注意的是,

User.findOrCreate
password-facebook-token-token自述文件中使用的方法不是默认的mongo /
mongoose方法,而是一个您必须安装的插件。

要将此身份验证策略用作任何路由的中间件,您需要将其

access_token
作为URL参数或请求主体的属性传递给它。

app.get('/my/api/:access_token/endpoint',         passport.authenticate(['facebook-token','other-strategies']),         function (req, res) { if (req.user){     //you're authenticated! return sensitive secret information here.     res.send(200, {'secrets':['array','of','top','secret','information']}); } else {     // not authenticated. go away.     res.send(401) }        }

注意 该

access_token
属性区分大小写并使用下划线。护照-facebook-
令牌的文档并不广泛,但是源代码确实经过了很好的注释并且非常易于阅读,因此,我建议您在此处进行深入了解。当然,这可以帮助我为护照的一些更一般的使用方法所用。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/448833.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号