0

return new HttpStatusCodeResult(500)和在操作中导致真正的错误(如除以零)有什么区别?

我问是因为我的 customErrors 在发生除零之类的错误时工作正常,但是如果我返回新的 HttpStatusCodeResult(500),customError 不会显示我的页面

4

1 回答 1

3

HttpStatusCodeResult用于通知浏览器操作的结果,使用实际的 HTTP 状态代码。例如,如果浏览器尝试加载不再可用的图像,您可以发送 404。如果用户尝试访问需要身份验证的资源,您可以返回 401。

由您的代码引起的错误通常不需要通知浏览器错误,而是需要通知用户,使用带有消息的错误页面。但是,这个错误页面(很可能)会以 HTTP 状态代码 200 发送到浏览器。

tldr; 这是两种不同类型的错误,具有不同的含义,适用于不同的接收者。

于 2014-05-08T12:54:21.223 回答