前言:

    無論是Android還是ios都離不開與服務(wù)器交互,這就必須用到網(wǎng)絡(luò)請求,記得在2013年做iOS的時候那時候用的ASIHTTPRequest框架,現(xiàn)在重新?lián)炱餴OS的時候ASIHTTPRequest已經(jīng)停止維護(hù),大家都在用AFNetWorking作為首選網(wǎng)絡(luò)請求框架,之前的ASIHTTPRequest是基于NSURLConnection類實現(xiàn)的,早期的AFNetWorking也是基于NSURLConnection實現(xiàn),后來iOS9 之后已經(jīng)放棄了NSURLConnection,開始使用iOS 7之后推出的NSURLSession,本著追根溯源的原則,首先學(xué)習(xí)一下NSURLSession的實現(xiàn)網(wǎng)絡(luò)請求,然后再去學(xué)習(xí)AFNetWorking。

 了解NSURLSession

    NSURLSession是2013年iOS 7發(fā)布的用于替代NSURLConnection的,iOS 9之后NSURLConnection徹底推出歷史舞臺。其使用起來非常方便,今天使用NSURLConnection分別實現(xiàn)了get、post、表單提交、文件上傳、文件下載,讓我這個以Android開發(fā)為主的屌絲程序員贊嘆不已,根據(jù)NSURLSession會話對象創(chuàng)建一個請求Task,然后執(zhí)行該Task即可,包括緩存、會話周期,多線程任務(wù)iOS都已經(jīng)在sdk層面封裝完畢,不過比較遺憾的時NSURLSession只提供了異步請求方式而沒有提供同步請求方式。接下來我們來如何實現(xiàn)網(wǎng)絡(luò)請求。

NSURLSession使用

  我們首先以一個簡單的get請求為例開始。

1.)首先構(gòu)造一個NSURL請求資源地址

   // 構(gòu)造URL資源地址
   NSURL *url = [NSURL URLWithString:@"http://api.nohttp.net/method?name=yanzhenjie&pwd=123"];

2.)創(chuàng)建一個NSRequest請求對象

平面設(shè)計培訓(xùn),網(wǎng)頁設(shè)計培訓(xùn),美工培訓(xùn),游戲開發(fā),動畫培訓(xùn)

    // 創(chuàng)建Request請求
    NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];  
        
		

網(wǎng)友評論