如果通过中间件M2并且如果某些条件已满,则跳转到M3。
var middleware = [M1,M2,M3];
app.post('/order/', middleware, finalMethod);
答案 0 :(得分:0)
您可以使用Express Conditional Middleware
:
var conditional = require('express-conditional-middleware');
var middlewares = [M1,M2,M3];
app.post('/order/', conditional.apply(null, middlewares));
答案 1 :(得分:0)
或者对于更复杂的逻辑,您可以使用此: Express Conditional Tree Middleware
查看文档,它易于使用并提供功能,以便您也可以将它与异步中间件一起使用!对于您的示例,我想您可以在M1和M2中间件之间使用orChainer,因此如果M1已满足,则不会执行M2并将此orChainer置于andChainer(其作为树)与M3中间件一起。希望你发现这个有用,祝你好运! :)