2

我将 WebAPI 用于各种 REST 调用,并且总是成功(当我不需要数据时)刚刚使用

return new HttpResponseMessage(HttpStatusCode.OK);

但是,由于jQuery 1.9发生了重大变化,需要始终发送 JSON,我需要一些更新方式,而不是NULL发送{}.

有没有更好的方法来返回带有有效 JSON 的 OK 消息,目前它只返回一个空字符串 ( NULL)?

注意:如果用户 Accept 类型请求它,我仍然希望保留返回 XML 的可能性,所以我相信我需要对格式化程序做一些事情或使用不是HttpResponseMessage.

4

2 回答 2

3

尝试这个,

return new HttpResponseMessage(HttpStatusCode.NoContent);  // 204 Status Code

这就是你应该如何表明会有正文内容。jQuery 应该尊重这一点。

我做了一些搜索,事实上,这是 5 个月前在 jQuery 中的这个提交中完成的。

于 2013-06-11T11:20:24.797 回答
2

不确定这里的最佳做法是什么,可能是 ASP.NET Web API 团队的某个人可以回答,但这有效。

public HttpResponseMessage Get()
{
    return Request.CreateResponse<object>(HttpStatusCode.OK, new object());
}
于 2013-06-11T11:03:11.070 回答