AFN2.0到3.0的迁移
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AFN2.0到3.0的迁移相关的知识,希望对你有一定的参考价值。
AFNetworking 1.0建立在NSURLConnection的基础API之上 ,
AFNetworking 2.0开始使用NSURLConnection的基础API ,以及较新基于NSURLSession的API的选项。
AFNetworking 3.0现已完全基于NSURLSession的API,这降低了维护的负担,同时支持苹果增强关于NSURLSession提供的任何额外功能。
由于Xcode 7中,NSURLConnection的API已经正式被苹果弃用。虽然该API将继续运行,但将没有新功能将被添加,并且苹果已经通知所有基于网络的功能,以充分使NSURLSession向前发展。
弃用的类:下面的类已从AFNetworking 3.0中废弃:
AFURLConnectionOperation
AFHTTPRequestOperation
AFHTTPRequestOperationManager
修改的类:下面的类包含基于NSURLConnection的API的内部实现。
他们已经被使用NSURLSession重构:
UIImageView+AFNetworking
UIWebView+AFNetworking
UIButton+AFNetworking
AFHTTPRequestOperationManager 核心代码
如果你以前使用 AFHTTPRequestOperationManager , 你将需要迁移去使用 AFHTTPSessionManager。
以下的类在两者过渡间并没有变化:
securityPolicy
requestSerializer
responseSerializer
AFNetworking 2.x
1
2
3
4
5
6
|
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager]; [manager GET:@ "请求的url" parameters:nil success:^(AFHTTPRequestOperation *operation, id responseObject) { NSLog(@ "成功" ); } failure:^(AFHTTPRequestOperation *operation, NSError*error) { NSLog(@ "失败" ); }]; |
AFNetworking 3.0
1
2
3
4
5
6
|
AFHTTPSessionManager *session = [AFHTTPSessionManager manager]; [session GET:@ "请求的url" parameters:nil success:^(NSURLSessionDataTask *task, id responseObject) { NSLog(@ "成功" ); } failure:^(NSURLSessionDataTask *task, NSError *error) { NSLog(@ "失败" ); }]; |
以上是关于AFN2.0到3.0的迁移的主要内容,如果未能解决你的问题,请参考以下文章
maven私库nexus2.3.0-04迁移升级到nexus-3.16.1-02(异机迁移备份)
thymeleaf 版本 2.14 到 3.0 的迁移未找到消息属性