AFNetworking(AFN)框架简介
是专为Mac OS & iOS设计的一套网络框架
提供有丰富的API
使用简单
是时下iOS开发领域,使用最为广泛的第三方网络框架之一
目前版本:2.4.1
Github地址:
AFN的功能:网络连接+出错处理+序列化&反序列化
AFHTTPRequestOperationManager
AFHTTPRequestOperationManager(请求操作管理器)封装了通过HTTP协议与Web应用程序进行通讯的常用方法,包括:
创建请求
响应序列化
网络连接监控
数据安全
AFHTTPRequestOperationManager初始化
// 默认请求是可序列化的
self.requestSerializer = [AFHTTPRequestSerializer serializer];
// 默认服务器返回是JSON对象
self.responseSerializer = [AFJSONResponseSerializer serializer];
// 默认不使用任何安全策略
self.securityPolicy = [AFSecurityPolicy defaultPolicy];
// 在网络请求中,会监控网络连接状态
self.reachabilityManager = [AFNetworkReachabilityManager sharedManager];
// 会开启新的操作队列,进行异步网络操作
self.operationQueue = [[NSOperationQueue alloc] init];
AFNetworkReachabilityManager *manager = [AFNetworkReachabilityManager sharedManager];
[manager startMonitoring];
[manager setReachabilityStatusChangeBlock:^(AFNetworkReachabilityStatus status) {
NSLog(@"%d", status);
}];
提示:要监控网络连接状态,必须要先调用单例的startMonitoring方法
选择
是否被广泛使用
建议
除日常使用外,多阅读第三方框架的源程序,尝试去理解和体会其架构、代码,是自学和提高的非常重要的手段
新建一个备份(分支)有针对性地进行测试并记录心得笔记
在正常开发中的版本不要修改源程序,以保证能够和官方同步