我有以下资源可用于返回特定的公司信息:
[HttpGet]
[Route("{companyId:Guid}")]
public IHttpActionResult Get(Guid companyId)
{
var company = CompanyRepository.Find(companyId);
if (company == null)
{
return NotFound();
}
else
{
var responseModel = new CompanyResponseModel()
{
CompanyId = company.Id,
Name = company.Name
};
return Ok(responseModel);
}
}
为什么我们不能在NotFound()
通话中包含内容?
例如,我想在错误响应模型中包含一条消息“公司ID不存在”。
这是否可能违反RESTful设计?
根据RFC2616第10节,404不会返回有关资源本身的任何信息。但是,如果您想使用404,则可以改用以下代码:
return Content(HttpStatusCode.NotFound, "Your Content/Message");
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句