【发布时间】:2014-06-01 16:00:23
【问题描述】:
我想在我的服务中返回一个 HTTP 错误代码以及一个 JSON 对象。但我找不到直接的方法来做到这一点。
现在我就是这样做的:
if (!ModelState.IsValid)
{
return ResponseMessage(Request.CreateResponse(HttpStatusCode.BadRequest, new BadRequestError(ModelState)));
}
基本上,我创建一个 HTTPResponse,其中包含我想要返回的对象,然后我将其“转换”为一个 IHttpActionResult 实例。
这是对的吗?还是我应该以另一种方式这样做?
【问题讨论】:
-
返回一个 HTTP 错误代码,根据定义,意味着没有有效的响应。你想通过返回两者来完成什么?
-
如果你的意思是错误代码和 json 对象,在 Json 对象中我有关于为什么请求是“错误请求”的详细信息。
-
我认为您可能想要选择与“错误请求”不同的 HTTP 响应——这意味着请求的 HTTP 语法 格式不正确,这是不正确的。否则,您正在做的事情应该与任何其他选项一样有效。我以为你的意思是
HttpResponseMessage?ResponseMessage是一个 Exchange 类...
标签: c# rest httpresponse asp.net-web-api2