iphone開發網絡下(上傳下載)
在iphone網絡開發中經常會用到上傳文件和下載文件的過程,比如頭像的上傳和升級,還有ipa文件的下載等等。這下都要用到網絡的上傳和下載。所以這些內容在iphone網絡開發中是很重要的,由於前面的blog中說了一些網絡開發的基礎和異步,同步的問題。上傳和下載就是用這些內容進行實際的運用,進一不對網絡開發的瞭解。
下面就來介紹下上傳和下載
上傳
在做iphone客戶端的時候首先要有一個服務器後臺的上傳和下載的服務。這裏就不說後臺的過程了。
在客戶端中首先要加入url
NSURL*url=[NSURL URLWithString:@"http://localhost:8080/testIphone/fileUpLoad"];
這個就不多說了
ASIFormDataRequest *dataRequest=[ASIFormDataRequest requestWithURL:url];
在這裏我們用一個ASIFormDataRequest 來做request請求。用url來初始化ASIFormDataRequest 這個是請求的根。
[dataRequest setStringEncoding:CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingMacChineseSimp)];
上面這個是用來設置編碼格式
[dataRequest setFile:@"文件路徑" forKey:@"attach"];這個是用來設置你上傳的文件是什麼
[dataRequest setDelegate:self];
[dataRequest setDidFinishSelector:@selector(responseFinish)];
[dataRequest setDidFailSelector:@selector(responseFailed)];
[dataRequest startSynchronous];
當你請求結束後和請求失敗後觸發的方法。要在你的程序中自己定義。
下載
下載比上傳要簡單,只要你設置url,request,在設置下載路徑就可以開始下載了
NSLog(@"文件下載");
NSString * path=[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDirectory, YES) objectAtIndex:0]; 設置下載的路徑
path=[path stringByAppendingPathComponent:@"test"];
url=[NSURL URLWithString:@"http://localhost:8080/testIphone/fileUpLoadT.jpg"];
ASIHTTPRequest *request=[ASIHTTPRequest requestWithURL:url];
[request setDownloadDestinationPath:path];
這個是用來把下載的路徑加載在request中,到時候下載的文件就在這個下面
[request setDownloadProgressDelegate:self];
[request startSynchronous];
以上就是上次和下載的方法,這些比較簡單。
在iphone開發中網絡開發是很重要的,因爲iphone是客戶端,這樣就表示和服務端的通訊是用接口,這樣都是用網絡通訊開始的。希望這些對大家有點幫助。