iOS AFNetworking 3.0.4 的基本使用

get请求:


NSMutableDictionary *dic = @{@"":@"",@"":@""};
NSURL *url = [NSURL URLWithString:@""];
AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
[manager GET:url.absoluteString parameters:dic progress:^(NSProgress * _Nonnull downloadProgress) {
    
}
     success:^(NSURLSessionDataTask * _Nonnull task, id  _Nullable responseObject) {
         
         NSLog(@"get方式请求成功 %@",responseObject);
         
     }
 
     failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull   error) {
         
         NSLog(@"getError:%@",error);  //这里打印错误信息
         
     }];


post请求:


NSMutableDictionary *dic = @{@"":@"",@"":@""};
NSURL *url = [NSURL URLWithString:@""];
AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
[manager POST:url.absoluteString parameters:dic progress:^(NSProgress * _Nonnull uploadProgress) {
    
} success:^(NSURLSessionDataTask * _Nonnull task, id  _Nullable responseObject) {
    
    NSLog(@"post方式请求成功 %@",responseObject);
    
} failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
    
    NSLog(@"postError: %@",error);  //这里打印错误信息
}];


服务器响应出错问题:"Request failed: unacceptable content-type: text/html"


之前请求没问题,更新了af以后出现的这个问题,是因为新的af里面没有这种服务器返回的数据格式类型,所以需要在AFNetworking里面找到AFURLResponseSerialization.m文件,在228行里面添加下面的蓝色内容:


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