2015-07-21 144 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