AFNetworking類庫

    NSString *urlPath = @"http://10.0.8.8/sns/my/user_list.php";php

    //  AFNetworking VS ASI 最大的優點是 ARC支持json

    //  AFNetworking目標是遇上ASI, AFNetworking致辭NSURLConnectionNSURLSession服務器

    //  AFNetworking是使用NSURLConnection NSURLSession網絡

    //  #improt "AFNetworking.h"session

    

    //1.使用 NSURLConnection版本的AFNetworkingurl

    //1.1建立一個AFN管理對象spa

    AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];3d

    

    //1.2告訴manager只下載原始數據, 不要解析數據(必定要寫)orm

    //     AFN便可如下載網絡數據, 又能夠解析json數據,若是不寫下面的  自動就解析json對象

    //     因爲作服務器的人返回json數據每每不規範, 凡是AFN又檢查很嚴格,致使json解析每每失敗

    //     下面這句話的意思是 告訴AFN千萬別解析, 只須要給我裸數據就能夠

    manager.responseSerializer = [AFHTTPResponseSerializer serializer];

    

    //1.3使用GET下載數據

    NSDictionary *params = @{@"page" : @"2"};//表示第幾頁

    [manager GET:urlPath parameters:params success:

     ^(AFHTTPRequestOperation *operation, id responseObject) {

         NSData *data = operation.responseData;

         NSDictionary *dict = [NSJSONSerialization  JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil];

         NSLog(@"parase json is%@",dict);

     } 

     failure:^(AFHTTPRequestOperation *operation, NSError *error) {

         NSLog(@"下載錯誤 is %@",error);

    }];

    

  


    

    //2.使用NSURLSession版本的AFNetworking

    //2.1建立一個AFN管理對象

    AFHTTPSessionManager *smanager = [AFHTTPSessionManager manager];

    

    //2.2告訴manager只下載原始數據, 不要解析數據(必定要寫

    smanager.responseSerializer = [AFHTTPResponseSerializer serializer];

    

    //2.3使用GET下載數據

    [smanager GET:urlPath parameters:params success:^(NSURLSessionDataTask *task, id responseObject) {

        NSData *data = responseObject;

        NSDictionary *dict = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil];

        NSLog(@"parase session is %@",dict);

    } failure:^(NSURLSessionDataTask *task, NSError *error) {

        NSLog(@"下載錯誤 %@",error);

    }];

相關文章
相關標籤/搜索