2010-02-24 44 views
1

我有一個帶有一些文件的遠程服務器。我想用AsyncSocket下載一個文件,塊大塊。我想通過套接字發送帶有範圍的HTTP請求並獲取適當的數據塊。我知道如何在本地主機上執行此操作,但不能從遠程服務器上執行此操作。我真的不知道如何使用connectToHost和acceptOnInterface(以前的acceptOnAddress)方法。iphone/mac - 如何使用AsyncSocket下載文件

請幫

感謝

回答

0

AsyncSocket是一個通用的數據連接。如果你想讓它談論HTTP,你需要自己編寫HTTP部分。你可能不需要這個; NSURLConnection應該做你想做的,只要服務器支持它。

您要求的是HTTP中的Range:標頭。請參閱RFC2616中的14.35.2。您只需將此標題添加到NSURLRequest即可。同樣,這假定您正在與之通話的服務器支持此操作(您需要檢查響應中的Accept-Ranges:標頭)。

Surgeworks上有一篇關於此示例代碼的簡短文章。

您還應該看看ASIHTTPRequest,其中包括可恢復的下載和下載進度分配,並且可能適用於部分下載。它可能已經解決了您正在嘗試解決的特定問題。