背景:我有一個用Erlang編寫的自定義HTTP服務器來將東西流式傳輸到iPad應用程序。我使用NSURLConnection - 標準的高級Apple方式來使用HTTP內容。然而,我遇到了小塊數據被緩衝的問題,並且沒有立即傳遞給我的代碼,所以我不得不切換到CFNetwork。我的HTTP服務器的輸出顯然無效。我如何調試它?
雖然NSURLConnection的從來沒有抱怨,CFNetwork的有時(〜1 3次)提供了以下錯誤並殺死的連接:
The operation couldn’t be completed. (kCFErrorDomainCFNetwork error 303.)
根據Apple docs,這對應於「HTTP服務器響應無法解析「。
這隻發生在連接打開幾秒後,並且正在作出響應。
我用tshark在服務器上捕獲了一個數據包。它非常大,包含UTF-8以及機密信息。
如何驗證它是否爲有效的HTTP 1.1分塊響應?
爲了澄清,我查看了tcpick -C -yP -r ...
的結果,看不到任何直接的錯誤,但我想知道是否有任何事情可以通過它來確認它是字節有效的字節。
護理闡述?據我所知,實現是合理的,據我所知,數據包轉儲是合理的(雖然它很大,所以我的目光有點膚淺),但CFNetwork告訴我這聽起來不太合適。我寫了一個HTTP客戶端來使用數據包捕獲來驗證它,我有什麼可以做的來驗證它嗎? – Max