您的位置:首页 > 移动开发 > IOS开发

iOS开发之AFN的使用和注意事项

2015-05-12 10:05 477 查看
iOS开发中为了高效,往往会使用到第三方框架(当然很多企业会用原生的进行封装,本文暂不探讨)。

在使用AFN发送完请求后, NSData *data = operation.responseData; 这句代码,就是不执行,检查好久,代码无错,后来才知道,原来是少了一句话。

// 1.建管理者
AFHTTPRequestOperationManager *manager =[AFHTTPRequestOperationManager manager];
manager.responseSerializer = [AFHTTPResponseSerializer serializer];//我就是没写这句代码


// 2.封装参数
NSUserDefaults *df = [NSUserDefaults standardUserDefaults];//从用户偏好中读取,之前存到里面了
NSString *userid=[df stringForKey:@"USERID"];
NSString *usercode=[df stringForKey:@"USERCODE"];
NSString *tpid = [NSString stringWithFormat:@"%d",_TPID];
NSString *egid = [NSString stringWithFormat:@"%d",_EGID];

NSMutableDictionary *params = [NSMutableDictionary dictionary];
params[@"userid"] = userid;
params[@"usercode"] = usercode;
params[@"tpid"]= tpid;
params[@"egid"] = egid;

NSString *urlStr = @"http://www.mbacnn.com/2014/app/UserApp!topic.action";


// 3.发送请求
[manager GET:urlStr parameters:params success:^(AFHTTPRequestOperation *operation, id responseObject) {
//成功后,解析数据
NSData *data = operation.responseData;//此处要记住哦!
NSDictionary *dict = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil];

NSLog(@"-dict-%@",dict);//打印看看是否获得了字典吧

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

//失败后要提示用户,此处可以弹出一个alert

}];
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: