Mam projekt Web API i prawo moje metody zawsze zwraca HttpResponseMessage.Web API Najlepsze podejście do zwrotu HttpResponseMessage
Więc, czy to działa czy nie wrócę:
bez błędów:
return Request.CreateResponse(HttpStatusCode.OK,"File was processed.");
Każdy błąd lub nie
return Request.CreateResponse(HttpStatusCode.NoContent, "The file has no content or rows to process.");
Kiedy wrócę obiektu potem użyj:
return Request.CreateResponse(HttpStatusCode.OK, user);
chciałbym wiedzieć jak mogę wrócić do mojego klienta HTML5 lepiej obudowane respose, więc mogę wrócić więcej informacji o transakcji, itp
myślałem o tworzeniu niestandardowej klasy, które mogą hermetyzacji HttpResponseMessage, ale mają też więcej danych.
Czy ktoś wdrożył coś podobnego?
Nie należy używać żadnej zawartości w HttpStatusCode.NoContent. – kappadoky
Ogólnie, jeśli zwrócisz HttpActionResult z 'HttpStatusCode.NoContent', to będzie - zaskoczyć - nie zwróci żadnej zawartości, nawet jeśli przekazujesz ciąg jak w powyższym przykładzie. Może być zaskakującym błędem. Podobnie jak odpowiedź użytkownika BigTone poniżej. To ma również sens, zgodnie ze specyfikacją https://httpstatuses.com/204 'Odpowiedź 204 jest kończona przez pierwszą pustą linię za polami nagłówka, ponieważ nie może zawierać treści wiadomości." – mmcrae