【发布时间】:2012-06-27 11:11:08
【问题描述】:
来自http://www.asp.net/web-api/overview/web-api-routing-and-actions/exception-handling
HttpResponseException
如果 Web API 控制器抛出异常会发生什么?默认, 大多数异常被翻译成带有状态码的 HTTP 响应 500,内部服务器错误。
HttpResponseException 类型是一种特殊情况。这个例外 返回您在构造函数中指定的任何 HTTP 状态代码 例外。
除了它没有。 Fiddler 显示返回 500。
但是,HttpException 似乎与那篇文章所说的一样。
是文档有误还是我遗漏了什么?
更新
在打字的时候,我有了一个想法。我尝试了两个控制器,一个 ApiController 和一个标准 MVC 控制器。
这两个异常根据引发它们的控制器的类型相互反向工作。
- 使用 HttpResponseException 从 API 返回正确的 HTTP 代码 控制器。
- 使用 HttpException 从 MVC 控制器。
【问题讨论】:
标签: asp.net-mvc