2013-02-07 24 views
30

我目前正在嘗試優化幾個應用程序之間的基於http的數據傳輸。 我們目前的做法,首先下載,然後創建後請求,顯然會增加額外的IO /內存負載和延遲,這是我想要規避的。HTTP POST:content-length頭要求?

所有的核心問題:

是否需要發送「內容長度」標頭在HTTP POST請求? IIRC,HTTP 2616聲明它是可選的,但我不確定應用程序在這一點上的實際行爲。

+0

對於應答,請參閱http://stackoverflow.com/q/15991173/632951 – Pacerier

回答

19

取決於可選的意思。如果你的意思是你可以隨時忽略標題,那麼不需要,它不是可選的。 HTTP規範在使用該標頭時有非常具體的規則。如果您不知道長度,則有不同的發送方式。例如分塊編碼。

4.4 Message Length

+5

簡言之,POST請求的'內容length'或'傳輸編碼之一:chunked'頭應當下。 – Salar