2017-06-20 120 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