AFNetWorking
iOS中最常用的网络请求第三方库,可以方便的实现各种请求详情见GitHub
最新版的库在Xcode6中运行会报错,因为加了nonnull导致的,而在最新版的Xcode7中,由于官方已经废弃了大量的类和函数,虽然可以运行但会出一大堆警告
在iOS9中,已经废弃了NSURLConnection这个类,取而代之的是NSURLSession,而AFNetWorking还是支持NSURLConnection的,所以会出现警告
示例
NSURL * url = [NSURL URLWithString:@"http://iappfree.candou.com:8080/free/applications/limited?currency=rmb&page=1"];
NSURLRequest * request = [NSURLRequest requestWithURL:url];
NSURLSessionConfiguration * configure = [NSURLSessionConfiguration defaultSessionConfiguration];
AFHTTPSessionManager * manager = [[AFHTTPSessionManager alloc]initWithSessionConfiguration:configure];
NSURLSessionDataTask * task = [ manager dataTaskWithRequest:request completionHandler:^(NSURLResponse *response, id responseObject, NSError *error) {
NSArray * arr = [responseObject objectForKey:@"applications"];
NSLog(@"%@",arr);
for (NSDictionary * dict in arr) {
AppModel * app = [[AppModel alloc]initWithDictionary:dict error:nil];
NSLog(@"%@",app);
}
}];
[task resume];
JSONModel
一个强大的字典转模型的类,详情见GitHub
使用方法,只要继承JSONModel这个类即可,该类已经实现NSCoding和NSCoping,解档归档更是不在话下,强烈推荐,GitHub上写的很清楚,自行查看即可