2012-07-18 56 views
0

這個問題主要是一個HTTP問題,我正在研究一個iOS應用,儘管這個問題不是特定於iOS的。取消HTTP/1.1分塊響應並保持持續連接

我想使用持久連接,並且沒有問題,直到HTTP響應使用分塊傳輸類型,而不是顯式發送Content-Length。響應本身正常工作,並且如果我從不需要取消響應,則可以工作。此響應可能需要一段時間才能發送響應(可能需要幾分鐘的時間,並且永遠不會發送最終的0塊),並且我經常要取消此請求(和響應)並在同一連接上發送新的請求。

對於HTTP/1.1,如何取消分塊響應而不是關閉連接?

我目前的解決方法是不使用持久連接,但後來我失去了使用持久連接的所有好處,這使得啓動這些請求的速度變慢了。

回答

3

您不能取消它。 HTTP協議中沒有任何內容允許您中斷HTTP響應。您需要閱讀並放棄整個響應或關閉連接。但是,您可以在服務器仍在發送響應的同一連接上發出另一個HTTP請求,但仍需處理對原始請求的整個響應。

+0

這是我原來的結論,但我希望有一些其他的方式。 – Kekoa 2012-07-23 19:51:02