在没有覆盖用户请求对象的情况下,将passport.js与多种策略一起使用

金属获奖者

我正在使用passport.js本地策略进行身份验证。我还需要用户通过Facebook,Twitter和G +进行身份验证,但作为auth替代方式,而是使用户能够从这些服务中检索其内容。

如所写,每个身份验证策略都会将用户对象写入请求对象。这具有注销我的root用户的作用。有没有一种方法可以将护照用于这些其他身份验证策略,但不能覆盖用户对象?

这是规范的示例:

var passport = require('passport')
  , TwitterStrategy = require('passport-twitter').Strategy;

passport.use(new TwitterStrategy({
    consumerKey: TWITTER_CONSUMER_KEY,
    consumerSecret: TWITTER_CONSUMER_SECRET,
    callbackURL: "http://www.example.com/auth/twitter/callback"
  },
  function(token, tokenSecret, profile, done) {
    User.findOrCreate(..., function(err, user) {
      if (err) { return done(err); }
      done(null, user); //trashes my existing user object
    });
  }
));
金属获奖者

一种方法是使用回调而不是重定向。通常,您将调用req.login()来设置请求对象。您可以跳过该步骤,然后对响应进行任何操作。

app.get('/auth/twitter/callback', function (req, res, next) {
        passport.authenticate('twitter', function (err, user, info) {
            res.send({err: err, user: user, info: info}); //skip req.login()
        })(req, res, next)
    });

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

没有“管理”权限策略的情况下,是否可以将MassTransit 3与Azure Service Bus一起使用?

来自分类Dev

在没有实例的情况下将FakeItEasy A.CallTo与实例MethodInfo一起使用

来自分类Dev

在没有警告的情况下将session_start()与AJAX一起使用

来自分类Dev

在没有AMD的情况下将TypeScript与jQuery一起使用?

来自分类Dev

在没有覆盖的情况下使用super与this

来自分类Dev

在没有中间工作的情况下将await与异步方法一起使用会有什么好处?

来自分类Dev

在没有JSP的情况下,将jQuery与Servlet一起使用是否有任何弊端?

来自分类Dev

在没有中间工作的情况下将await与异步方法一起使用会有什么好处?

来自分类Dev

是否可以在没有对代码进行硬编码的情况下将图标与css:一起使用?

来自分类Dev

可以在没有节点的情况下将react-native与Java和Tomcat一起使用吗?

来自分类Dev

如何在没有着色器的情况下将glDrawArrays与纹理数组一起使用

来自分类Dev

在没有SET_SRID的情况下将ST_Intersects与ST_MakePoint一起使用

来自分类Dev

如何在没有构建系统的情况下将 babel 与简单的 HTML 文件一起使用?

来自分类Dev

仅在没有任何应用程序的情况下将 Django 框架与管理后端一起使用

来自分类Dev

允许用户在没有密码的情况下使用sudo

来自分类Dev

将Z3 QFNRA策略与数据类型一起使用:交互或内联

来自分类Dev

如何将Coq算术求解器策略与SSReflect算术语句一起使用

来自分类Dev

将访问控制与IAM策略一起使用时的DynamoDB和GSI

来自分类Dev

是否可以将HDFS存储类型/策略与HBase一起使用?

来自分类Dev

如何在有和没有ssh身份验证的情况下将Git与两个不同的存储库一起使用?

来自分类Dev

如何在无逗号和点的情况下将数字与angular.js一起使用?

来自分类Dev

将Vue JS与Require JS一起使用?

来自分类Dev

是否可以在没有自己的证书的情况下将SSL与自定义域一起在App Engine上使用?

来自分类Dev

如何在没有工件的情况下将sap.m.Shell与sap.ui.unified.Shell一起使用

来自分类Dev

在没有服务器端变通的情况下将VS2019与TFS2018 vnext构建系统一起使用

来自分类Dev

是否可以在没有自己的证书的情况下将SSL与自定义域一起使用在App Engine上?

来自分类Dev

如何在没有devise-async的情况下将sidekiq与devise一起使用来发送电子邮件

来自分类Dev

如何在没有工件的情况下将sap.m.Shell与sap.ui.unified.Shell一起使用

来自分类Dev

在没有记住我选项的情况下将 itsdangerous 与 Flask-Login 一起使用是否更安全?为什么或者为什么不?

Related 相关文章

  1. 1

    没有“管理”权限策略的情况下,是否可以将MassTransit 3与Azure Service Bus一起使用?

  2. 2

    在没有实例的情况下将FakeItEasy A.CallTo与实例MethodInfo一起使用

  3. 3

    在没有警告的情况下将session_start()与AJAX一起使用

  4. 4

    在没有AMD的情况下将TypeScript与jQuery一起使用?

  5. 5

    在没有覆盖的情况下使用super与this

  6. 6

    在没有中间工作的情况下将await与异步方法一起使用会有什么好处?

  7. 7

    在没有JSP的情况下,将jQuery与Servlet一起使用是否有任何弊端?

  8. 8

    在没有中间工作的情况下将await与异步方法一起使用会有什么好处?

  9. 9

    是否可以在没有对代码进行硬编码的情况下将图标与css:一起使用?

  10. 10

    可以在没有节点的情况下将react-native与Java和Tomcat一起使用吗?

  11. 11

    如何在没有着色器的情况下将glDrawArrays与纹理数组一起使用

  12. 12

    在没有SET_SRID的情况下将ST_Intersects与ST_MakePoint一起使用

  13. 13

    如何在没有构建系统的情况下将 babel 与简单的 HTML 文件一起使用?

  14. 14

    仅在没有任何应用程序的情况下将 Django 框架与管理后端一起使用

  15. 15

    允许用户在没有密码的情况下使用sudo

  16. 16

    将Z3 QFNRA策略与数据类型一起使用:交互或内联

  17. 17

    如何将Coq算术求解器策略与SSReflect算术语句一起使用

  18. 18

    将访问控制与IAM策略一起使用时的DynamoDB和GSI

  19. 19

    是否可以将HDFS存储类型/策略与HBase一起使用?

  20. 20

    如何在有和没有ssh身份验证的情况下将Git与两个不同的存储库一起使用?

  21. 21

    如何在无逗号和点的情况下将数字与angular.js一起使用?

  22. 22

    将Vue JS与Require JS一起使用?

  23. 23

    是否可以在没有自己的证书的情况下将SSL与自定义域一起在App Engine上使用?

  24. 24

    如何在没有工件的情况下将sap.m.Shell与sap.ui.unified.Shell一起使用

  25. 25

    在没有服务器端变通的情况下将VS2019与TFS2018 vnext构建系统一起使用

  26. 26

    是否可以在没有自己的证书的情况下将SSL与自定义域一起使用在App Engine上?

  27. 27

    如何在没有devise-async的情况下将sidekiq与devise一起使用来发送电子邮件

  28. 28

    如何在没有工件的情况下将sap.m.Shell与sap.ui.unified.Shell一起使用

  29. 29

    在没有记住我选项的情况下将 itsdangerous 与 Flask-Login 一起使用是否更安全?为什么或者为什么不?

热门标签

归档