2017-06-20 45 views
0

我只是想知道,如果404/400響應在節點快車應用程序中被認爲是錯誤,並且它是否會被錯誤處理中間件捕獲?NodeJS Express - 404/400響應

我有一個很難的文檔

回答

0

在HTTP/1.1,400或更高的響應代碼在尋找這被認爲是一個錯誤。

但是,Express錯誤處理僅處理編程錯誤,而不是HTTP錯誤。如果您的應用程序檢測到錯誤情況併發回400或404響應,則Express不在意(即不會調用錯誤處理程序)。

+0

奇怪..我使用express-mung來轉換我的響應,但是當我返回一個'res.status(400);'它沒有斷點到我的中間件:/ – nav

+1

@nav https:// www。 npmjs.com/package/express-mung#options(與此結合:https://github.com/richardschneider/express-mung/blob/8d795a134d3e0fc0a4ab643032b581f95319bb71/index.js#L30-L31)。所以'express-mung'認爲狀態碼爲400或更高的所有響應都是錯誤的,如果你想要捕獲這些錯誤,你需要設置'mungError:true'。 – robertklep