我正在重新說明這一點,因爲我已經找出問題所在,但我無法理解它是如何發生或如何解決它的。NodeJs Express路由器錯誤
基本上,在我所有的路線中,我必須在那裏添加DELETE路線。首先是如下
app.route('/bi/clubs/:id')
.post(authentication,clubController.getAll)
.delete(authentication,clubController.deleteClub);
第二個位置是
app.route('/bi/clubs/members')
.post(authentication,memController.getAll)
.delete(authentication,memController.deleteMember);
每當我打電話刪除了「/ BI /俱樂部/成員」,表達的是實際的路由到/ BI /俱樂部/ :ID'。我實際上已經經歷了,並且發現這種情況正在發生。
我可以驗證我沒有在應用程序的任何其他位置添加路線,如果我註釋掉'/ bi/clubs/id'上的DELETE路線,那麼第二條DELETE路線將正確路由。如果我不發表評論,則對DELETE'/ bi/clubs/members'的呼叫將路由到'/ bi/clubs /:id'。
我設置路線的順序就像上面一樣。
任何幫助將不勝感激。
那麼服務器拋出的實際錯誤是什麼?你沒有提供很多細節...... – robertklep
這就是問題所在。我甚至沒有收到我的日誌文件或任何錯誤。我正在測試郵差,只是得到內部服務器錯誤。有趣的是,如果我將刪除方法的路由更改爲其他任何內容,那麼它將起作用。 –
您確實需要提供更多信息(什麼是'authentication'?getAll'工作嗎?您是否在[調試模式](http://expressjs.com/en/guide/debugging.html)中運行了Express?)。 – robertklep