【发布时间】:2013-10-03 06:39:27
【问题描述】:
有没有办法为 Web API 控制器中的方法指定成功返回码?
我的初始控制器结构如下
public HttpResponseMessage PostProduct(string id, Product product)
{
var product= service.CreateProduct(product);
return Request.CreateResponse(HttpStatusCode.Created, product);
}
但是,当您生成 Web API 帮助页面时,上述方法存在缺陷。 Web API 帮助页面 API 无法自动解码强类型产品是响应,因此在其文档中生成示例响应对象。
所以我采用以下方法,但这里的成功代码是OK (200) 而不是Created (201)。无论如何,我可以使用一些属性样式语法来控制方法的成功代码吗?另外,我还想将 Location 标头设置为创建的资源可用的 URL - 同样,当我处理 HttpResponseMesage 时,这很容易做到。
public Product PostProduct(string id, Product product)
{
var product= service.CreateProduct(product);
return product;
}
【问题讨论】:
标签: c# asp.net .net asp.net-mvc asp.net-web-api