ApiController:响应中缺少位置
ApiController: missing location in response
在我的API项目中创建资源时,有运行这段代码
public class MyCtrl : ApiController
{
...
if (isSuccess)
{
result.Id = newResource.Id;
var locationUrl = Request.RequestUri + "/" + id;
return Created(locationUrl, result);
}
}
但作为回应我只看到 id,如何强制 WebAPI 也 return locationId?
{
"id": "YHEMPZIF2VHHP6X7"
}
喜欢
if (isSuccess)
{
var locationUrl = Request.RequestUri + "/" + id;
var result = new { Id:newResource.Id, locationUrl: locationUrl }
return Created(locationUrl, result);
}
Created
方法的第一个参数在响应header 中传递给客户端。更准确地说,在 Location header。因此,为了访问它,您不必修改结果 object.
至于在客户端访问 headers。例如,在 ASP.NET MVC 中,您可以通过 Request.Headers
实现,在 Angular 中,通过 headers
属性 响应 object.
在我的API项目中创建资源时,有运行这段代码
public class MyCtrl : ApiController
{
...
if (isSuccess)
{
result.Id = newResource.Id;
var locationUrl = Request.RequestUri + "/" + id;
return Created(locationUrl, result);
}
}
但作为回应我只看到 id,如何强制 WebAPI 也 return locationId?
{
"id": "YHEMPZIF2VHHP6X7"
}
喜欢
if (isSuccess)
{
var locationUrl = Request.RequestUri + "/" + id;
var result = new { Id:newResource.Id, locationUrl: locationUrl }
return Created(locationUrl, result);
}
Created
方法的第一个参数在响应header 中传递给客户端。更准确地说,在 Location header。因此,为了访问它,您不必修改结果 object.
至于在客户端访问 headers。例如,在 ASP.NET MVC 中,您可以通过 Request.Headers
实现,在 Angular 中,通过 headers
属性 响应 object.