爱程序网

(iOS-网络)AFNetWorking网络框架的HTTP基本实现方法

来源: 阅读:

总结一下AFNetworking的基本使用方法。

①在AppDelegate.h中,导入AFHTTPRequestOperationManager.h文件,添加一个属性manager: 

@property (strong,nonatomic(AFHTTPRequestOperationManager *)manager;

  在实现文件中Application:didFinishLauchingWithOpertions:中完成manager的初始化:

self.manager = [AFHTTPRequestOperationManager manager];

②在需要使用HTTP协议加载数据的地方,导入AppDelegate.h,实现以下语句:

appDelegate = [UIApplication sharedApplication].delegate;
NSString *str_input_data
= [NSString stringWithFormat:@"238549_21963$2053$11$%@$%@$%@$%@$None$%@$O10.001$%@$%@$%@$%@$%@",ageCode,sexCode,nationCode,marryCode,symCode,self.highBPField.text,self.lowBPField.text,self.rateField.text,self.temperatureField.text,self.breathField.text]; NSString *temStr = [NSString stringWithFormat:@"http://url?str_input_data=%@",str_input_data];//str_input_data为服务端需要参数的接口 NSString *encoded = [temStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];//需要进行UTF-8编码转换才能是能被识别的URL [appDelegate.manager GET:encoded parameters:nil success:^(AFHTTPRequestOperation *operation, id resonseObject){
  //这里面对接收到的responseObject进行处理,它已经是解析好的json文件了   resultKeys
= [NSMutableArray array];   resultValues = [NSMutableArray array];   NSArray *array = resonseObject;   for (NSInteger j = 0; j < array.count; j ++){     if (j % 2 == 0) {       [resultKeys addObject:[array objectAtIndex:j]];     }     else if (j % 2 == 1 && ![(NSString *)array[j] isEqual:@" 0"]){       //[resultValues addObject:[array objectAtIndex:j]];       [resultValues addObject:(NSString *)array[j]];     }     else{       break;     }   }   NSLog(@"keys=%@,value= %@",resultKeys,resultValues);   [self.resultTable reloadData]; }failure:^(AFHTTPRequestOperation *operation, NSError *error){ NSLog(@"连接诊断结果服务错误:%@",error); }];

 

关于爱程序网 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助