ios網路開發 AFNetworking

來源:互聯網
上載者:User

標籤:style   blog   http   io   color   ar   os   使用   sp   

一、早前的幾個網路架構1、ASI架構: HTTP終結者.很牛, 但是有BUG, 已經停止更新.2、MKNetworkKit (印度人寫的).3、AFN一直還在更新.

 

AFNetworking的出現:MAC/iOS設計的一套網路架構.(為了簡化網路操作)

 

地址:https://github.com/AFNetworking/AFNetworking

 

*AFN專註與網路資料轉送,以及網路中多線程的處理. 

二、AFNetworking的使用

 

1、AFN特性 :*登入傳參數時,傳遞字典即可.(鍵名為參數名,索引值為參數值).*自動到子線程中執行,執行完後返回主線程.*返回的結果自動序列化為NSDictionary. 2、使用AFN注意 :*AFHTTPRequestOperationManager封裝了通過HTTP協議與Web應用程式進行通訊的常用方法.(這個執行個體化的時候不是單例, 因為沒有shared字)*包括建立請求/響應序列化/網路監控/資料安全.*方法等都是以AF開頭的.

 

 

3、AFN能做的 (網路中的都涵蓋了):*GET/POST/PUT/DELETE/HEAD請求.*JSON資料解析/Plist資料解析.(不支援XML資料解析)*POSTJSON.*上傳/下載.

 

 

4、使用步驟 : (可參考說明文檔) 1.首先需要執行個體化一個要求管理器AFHTTPRequestOperationManager. 2.佈建要求的資料格式:預設是二進位.(不是可改)*AFHTTPRequestSerializer(二進位)*AFJSONRequestSerializer(JSON)*AFPropertyListRequestSerializer(Plist) 3.設定響應的資料格式:預設是JSON.(不是可改)*AFHTTPResponseSerializer(二進位)*AFJSONResponseSerializer(JSON)*AFPropertyListResponseSerializer(Plist)*AFXMLParserResponseSerializer(XML)*AFImageResponseSerializer(Image)*AFCompoundResponseSerializer(組合的) 4.如果響應者的MIMEType不正確,就要修改acceptableContentTypes. 5.調用方法,發送響應的請求(GET/POST...).

 

AFN進行GET、POST請求:

 

1   AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];2   manager.responseSerializer.acceptableContentTypes = [NSSet setWithObject:@"text/html"];3   [manager GET:@"http://www.weather.com.cn/data/sk/101010100.html" parameters:nil success:^(AFHTTPRequestOperation *operation, id responseObject) {4         NSLog(@"JSON: %@", responseObject);5  } failure:^(AFHTTPRequestOperation *operation, NSError *error) {6         NSLog(@"Error: %@", error);7  }];

結果為:

2014-11-05 17:08:26.219 TestAFNetWorking[27957:70b] JSON: {

    weatherinfo =     {

        Radar = "JC_RADAR_AZ9010_JB";

        SD = "20%";

        WD = "\U897f\U5357\U98ce";

        WS = "2\U7ea7";

        WSE = 2;

        city = "\U5317\U4eac";

        cityid = 101010100;

        isRadar = 1;

        njd = "\U6682\U65e0\U5b9e\U51b5";

        qy = 1014;

        temp = 17;

        time = "16:45";

    };

}

ios網路開發 AFNetworking

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.