向 Restify conditionalHandler 添加多个中间件

Adding multiple middleware to Restify conditionalHandler

希望使用 Restify conditionalHandler 插件,并且我在某些路由中有多个中间件。

希望转换为:

server.put('/forceUpdate', middleware.requiresLogin, versionController.update);

变成这样

server.put('/addVersion', restify.plugins.conditionalHandler([
    {version: '1.1.3', handler: middleware.requiresLogin, versionController.update},
    {version: '2.0.1', handler: middleware.requiresLogin, versionController.update}
]));

我无法在处理程序中链接中间件,对此有最佳实践吗?

处理程序是否接受数组?

我的另一个想法是添加更多中间件作为 conditionalHandlers,但这似乎过分了。

如有任何帮助,我们将不胜感激。

是的,可以根据documentation传递一组中间件函数。所以您的代码将如下所示:

server.put('/addVersion', restify.plugins.conditionalHandler([
  {version: '1.1.3', handler: [middleware.requiresLogin, versionController.update]},
  {version: '2.0.1', handler: [middleware.requiresLogin, versionController.update]}
]));