【问题标题】:What is the (req, res) after passport authenticate for?护照认证后的(req,res)是什么?
【发布时间】:2018-04-20 14:45:54
【问题描述】:

在passport.js中,我注意到当人们使用authenticate方法时,他们有时会在调用该方法后添加(req, res, next?)。这具体是做什么的?

例如来自这里的一点sn-p:https://github.com/jaredhanson/passport/blob/master/lib/authenticator.js

passport.authenticate('basic', { session: false })(req, res);

谢谢

【问题讨论】:

  • 这在文档中有清楚的说明。
  • 那很快。您能否指出我在文档中解释这一点的位置。到目前为止我没有运气
  • 请不要像 Google 一样对待 Stack Overflow。转到其中一个站点上的文档并查看文档链接。
  • 这就是我过去一个小时一直在做的事情,但没有运气,因此我在这里。为什么你认为这是我的第一个解决方案?我求助于阅读源代码以了解更多信息,但仍然无法弄清楚。如果您清楚地知道答案,为什么不分享和帮助像我这样可能陷入困境的其他人。
  • @BayoO'liliJason' 如果您向下滚动到“自定义回调”部分,这里会很好地解释:passportjs.org/docs

标签: javascript node.js express passport.js passport-local


【解决方案1】:

Passport 是 Node.js 的身份验证中间件,即它检查发出的 API 请求是否来自经过身份验证的源。 所以每次API请求时,请求(req)都会经过passport使用的认证策略,如果认证成功,那么passport会将用户的详细信息绑定到req(req)。

因此,在您的情况下,如果身份验证成功,则 req 应包含有关请求 API 的用户的更多详细信息。您现在可以确定 API 请求 (req) 来自一个经过验证的来源。

为了更好地理解,您可能需要查看以下内容:

https://github.com/jaredhanson/passport-http

https://github.com/passport/express-3.x-http-basic-example/blob/master/server.js

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-01-14
    • 2022-12-11
    • 2011-06-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-05
    相关资源
    最近更新 更多