object-c 網絡(下)

iphone開發網絡下(上傳下載)

在iphone網絡開發中經常會用到上傳文件和下載文件的過程,比如頭像的上傳和升級,還有ipa文件的下載等等。這下都要用到網絡的上傳和下載。所以這些內容在iphone網絡開發中是很重要的,由於前面的blog中說了一些網絡開發的基礎和異步,同步的問題。上傳和下載就是用這些內容進行實際的運用,進一不對網絡開發的瞭解。

          下面就來介紹下上傳和下載

                   上傳

                            在做iphone客戶端的時候首先要有一個服務器後臺的上傳和下載的服務。這裏就不說後臺的過程了。

                            在客戶端中首先要加入url

                    NSURLurl=[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是客戶端,這樣就表示和服務端的通訊是用接口,這樣都是用網絡通訊開始的。希望這些對大家有點幫助。

發佈了54 篇原創文章 · 獲贊 42 · 訪問量 10萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章