使用OData取消授权响应转为406

时间:2017-03-06 17:28:54

标签: asp.net asp.net-web-api odata http-status-code-406

我刚刚升级到Microsoft.AspNet.OData v6.0.0,并开始遇到406状态代码。我可以通过将using System.Web.Http.OData;更改为using System.Web.OData;来解决大多数问题,但我仍然遇到自定义错误响应问题。

当授权/异常过滤器将响应设置为我的错误响应类型时,OData似乎将我设置的任何响应转换为空406响应。

如何防止这种情况发生,以便我的过滤器可以返回自定义错误响应?

2 个答案:

答案 0 :(得分:0)

您的请求来自客户端的标头是什么,响应中的响应类型标头是什么?

请求中的Accept标头可能不包括从端点返回的响应类型。在请求的Accept头中包含正确的响应类型。

答案 1 :(得分:0)

可能是你不能使用Get,你必须使用Post并定义一个Action来获得你想要的东西。