2013-02-07 26 views
30

Obecnie próbuję zoptymalizować transfer danych oparty na protokole HTTP między kilkoma aplikacjami. Nasze obecne podejście, pobieranie najpierw, a następnie tworzenie post-request, oczywiście dodaje dodatkowe obciążenie IO/pamięci i opóźnienia, które chciałbym omijać.HTTP POST: wymagany nagłówek długości treści?

Rdzeń pytanie wszystkim:

wymagane jest wysłanie "Content-Length" w nagłówku żądania HTTP POST? IIRC, HTTP 2616 deklaruje, że jest opcjonalny, ale nie jestem pewien, jak aplikacje faktycznie zachowują się w tym momencie.

+0

Dla odpowiadających patrz http://stackoverflow.com/q/15991173/632951 – Pacerier

Odpowiedz

19

Zależy od tego, co masz na myśli, opcjonalnie. Jeśli masz na myśli, że możesz po prostu pominąć nagłówek, kiedy chcesz, to nie, nie jest to opcja opcjonalna. Specyfikacja HTTP ma bardzo specyficzne reguły, kiedy używać tego nagłówka. Istnieją różne sposoby przesyłania danych, jeśli nie znasz długości. Kodowane kodowanie na przykład.

4.4 Message Length

+5

W skrócie, test POST żąda jednego 'zawartości-length' lub 'Transfer-Encoding: nagłówki chunked' powinna obecny. – Salar

Powiązane problemy