有没有办法检查express应用程序中调用堆栈中的下一个中间件函数是什么?
我试图通过比较next函数和我肯定知道下一个会被调用的函数的引用来进行检查。
public static async requestMapper(request: Request, response: Response, next: Function){
console.log(next == ExampleController.exampleHandler)
next();
}
尽管我确实知道接下来会调用ExampleController.exampleHandler,但这个片段的输出是false
从express文档中无法访问下一个中间件。中间件功能可以执行以下任务:
- 执行任何代码
- 对请求和响应对象进行更改
- 结束请求-响应周期
- 调用堆栈中的下一个中间件函数
nest.js 也是如此
如果您试图了解下一个中间件,我认为您的方法不好。