node.js - 如何使用express/connect中的数据来猴子修补请求obj

标签 node.js connect express

你好 我正在编写一个中间件库来抽象 oauth 授权/身份验证的过程并提供自己的身份验证策略。

我陷入困境,因为当我用数据猴子修补请求时,除了其他中间件之外,它在任何路由请求上都不可用(connect/express 文档在这个问题上非常糟糕)。

如何使数据保持不变,以便每个请求都可以使用它(静态文件除外)?

谢谢。

P.s 我不使用其他可用的模块,因为让它们工作只是令人沮丧......

最佳答案

试试这个:

function authOrDie() {
  return function(req,res,next) {
    console.log(req.isAuthenticated());
    next(); // Have to call next to continue to the next middleware
  };
}

我假设console.log(req.isAuthenticated());正在运行并且正在工作,我还假设它正在打印 false .

此外,如果对静态文件的请求不需要进行身份验证,您应该将其移至堆栈中更高的位置。

关于node.js - 如何使用express/connect中的数据来猴子修补请求obj,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7418355/

相关文章:

Node.js Express - 将渲染数据添加到所有渲染请求的中间件

node.js - react : rendering content (view) according to requested route (ExpressJS)

node.js - 向我的 Jade 模板添加页脚时超出了最大调用堆栈大小

node.js - 实时重新加载失败 - 无法加载资源:net::ERR_CONNECTION_REFUSED

node.js - 如何捕获nodejs连接静态404错误?

session - Node.js,具有无限循环的 session

javascript - 使用 supertest 启动和停止服务器

Javascript:SyntaxError:await 仅在异步函数中有效

javascript - 如果失败,则跳过规范中的后续 Mocha 测试

javascript - 逐步使用 Node.js 创建自定义应用程序