IOS 学习笔记 —— AFNetworking 2.0 使用详解(一)

原创
2014/12/25 16:07
阅读数 6.3W


1 请求数据

#import "AFHTTPRequestOperationManager.h"

-(void) requestUseAFN_V2{
    NSString *postUrl = "INPUT YOUR URL HERE";
    
    NSDictionary *parameters = @{@"PARAMETERS NAME 1": @"PARAMETERS VALUE 1",
                                 @"PARAMETERS NAME 2": @"PARAMETERS VALUE 2"};
    
    AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
    
    //方法一:
//    manager.requestSerializer = [AFJSONRequestSerializer serializer];
//    manager.responseSerializer = [AFJSONResponseSerializer serializer];
//    [manager.requestSerializer setValue:@"application/json" forHTTPHeaderField:@"Accept"];
//    [manager.requestSerializer setValue:@"application/json; charset=utf-8" forHTTPHeaderField:@"Content-Type"];
    
    //注意:默认的Response为json数据
//    [manager setResponseSerializer:[AFXMLParserResponseSerializer new]];
//    manager.responseSerializer = [AFHTTPResponseSerializer serializer];//使用这个将得到的是NSData
    manager.responseSerializer = [AFJSONResponseSerializer serializer];//使用这个将得到的是JSON
    
    //注意:此行不加也可以
    manager.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"application/json",@"text/json", @"text/plain", @"text/html", nil];
//    manager.responseSerializer.acceptableContentTypes = [NSSet setWithObject:@"text/html"];
//    manager.responseSerializer.acceptableContentTypes = [NSSet setWithObject:@"text/plain; charset=utf-8"];
//    manager.responseSerializer.acceptableContentTypes = [manager.responseSerializer.acceptableContentTypes setByAddingObject:@"text/plain"];
    
    
    //SEND YOUR REQUEST
    [manager POST:postUrl parameters:parameters success:^(AFHTTPRequestOperation *operation, id responseObject) {
        NSLog(@"JSON: %@", responseObject);
        
        NSString *str = [responseObject objectForKey:@"KEY 1"];
        NSArray *arr = [responseObject objectForKey:@"KEY 2"];
        NSDictionary *dic = [responseObject objectForKey:@"KEY 3"];
        
        //...
    } failure:^(AFHTTPRequestOperation *operation, NSError *error) {
        NSLog(@"Error: %@", error);
    }];
    
}




展开阅读全文
打赏
3
4 收藏
分享
加载中
更多评论
打赏
0 评论
4 收藏
3
分享
返回顶部
顶部