Nie można uzyskać interfejsu API ASP.NET 4 w celu zwrócenia kodu statusu „201 - Utworzony” w celu udanego testu POST
Próbuję zwrócić kod stanu HTTP z201 Created
za operację RESTful POST przy użyciu interfejsu API ASP.NET 4, ale zawsze otrzymuję200 OK
.
Obecnie debuguję na IIS 7.5.7600.16385, VS 2010 Professional, Windows 7 64-bit Professional.
<code>public MyResource Post(MyResource myResource) { MyResource createdResource; ... HttpResponse response = HttpContext.Current.Response; response.ClearHeaders(); // added this later, no luck response.ClearContent(); // added this later, no luck response.StatusCode = (int)HttpStatusCode.Created; SetCrossOriginHeaders(response); return createdResource; } </code>
Widziałem inne przykłady gdzieHttpContext.Current.Response.StatusCode
jest ustawiony przed zwróceniem danych, więc nie sądziłem, że będzie to problem. Nie śledziłem go jeszcze w źródle MVC 4.
(Jest to związane z moimi dochodzeniami zto pytanie ale temat na tyle odmienny, by uzasadnić własne pytanie)
Nie jestem pewien, czy problemem jest IIS czy Web API. Zrobię dalsze testy, aby je zawęzić.