2015-07-21 142 views
0

我有一个我正在开发的小型项目,我希望能够同时拥有像这样的工作路线。如何在Express中路由动态和静态路由

indexRouter.get('/section/:path*', sectionController.pathLogic); 
indexRouter.get('/section/about', staticController.about); 

目前,* in/section /:path *捕获所有内容,/ section/about被忽略。

有没有办法同时处理这两个路线?

回答

1

您定义路线的顺序很重要,因此在定义路线时总是要将一般路线放在最后。路由器通过路由树遍历,如果发现可能的路由,它会在那里停止(除非它是中间件并且调用next())。所以在你的情况下,带'*'的路由更普遍,所以路由器就停在那里。

+0

谢谢@Knownasilya,我应该RTFM,我的路线是在错误的顺序,这解决了这个问题。 – jolyonruss