首页 > Web开发 > 详细

AFNetworkingV2Client改进版

时间:2014-01-25 12:42:06      阅读:424      评论:0      收藏:0      [点我收藏+]

AFNetworkingV2Client

====================


一、AFHTTPClient是什么?


AFHTTPClient 是在AFNetworkingV2基础上做的改进,主要实现AFHTTPClientV2类,该类根据当前OS进行选择HTTP请求处理方式,

IOS7及其以后,采用AFHTTPSessionManagerIOS7之前采用AFHTTPRequestOperationManager


二、改进:

1)在AFNetworkingV2AFHTTPResponseSerializer属性增加@"text/html"

self.acceptableContentTypes = [NSSet setWithObjects:@"application/json", @"text/json", @"text/javascript",@"text/html", nil];

2)在AFHTTPSessionManagerAFHTTPRequestOperationManager类中增加header方法如下:

- (void)setValue:(NSString *)value forHTTPHeaderField:(NSString *)field;


三、使用方法:


工程示例采用糗事百科的嫩草API

/*

- (void)loadData

{

    [self.indicatorView startAnimating];

    NSMutableDictionary  *params = [NSMutableDictionary dictionaryWithCapacity:2];

    [params setObject:@"5" forKey:@"count"];

    [params setObject:@"1" forKey:@"page"];

    

    __weak QiushiViewController  *weakSelf = self;

    [AFHTTPClientV2 requestWithBaseURLStr:@"http://m2.qiushibaike.com/article/list/latest" params:params httpMethod:HttpMethodGet successBlock:^(id responseObject) {

        

        NSLog(@"GET responseObject: %@",responseObject);

        QiushiViewController  *strongSelf = weakSelf;

        [strongSelf.indicatorView stopAnimating];

        

        if ([responseObject isKindOfClass:[NSDictionary class]]) {

            NSArray *array = [responseObject objectForKey:@"items"];

            NSMutableArray  *strollArray = [NSMutableArray arrayWithCapacity:[array count]];

            for (int i = 0; i < [array count]; i++) {

                NSDictionary *qiushiDic = [array objectAtIndex:i];

                QiuShi *qs = [[QiuShi alloc] initWithQiuShiDictionary:qiushiDic];

                [strollArray addObject:qs];

            }

            

            strongSelf.dataArray = strollArray;

        }


        

    } failedBlock:^(NSError *error) {

        NSLog(@"GET error: %@",error);

        QiushiViewController  *strongSelf = weakSelf;

        [strongSelf.indicatorView stopAnimating];

    }];

}

*/


四、QA交流


本工程希望能给IOS开发者提供些帮助,同时更希望IOS同行,能提出宝贵意见,欢迎拍砖


项目gitHub地址:https://github.com/pjk1129/AFNetworkingV2Client

AFNetworkingV2Client改进版

原文:http://blog.csdn.net/pjk1129/article/details/18737509

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!