ASI与AFN区别:(要点)
性能 (*)
- ASI基于底层的CFNetWork
- AFN基于NSURLConnection
- 运行性能 ASI > AFN
处理服务器数据
AFN : 根据服务器返回数据的类型,进行自动解析
服务器返回的是JSON数据,自动转换为NSDictionray或者NSArray
服务器返回的XML数据,自动转换为NSXMLParserASI : 并没有对服务器返回数据进行解析,直接返回NSData二进制数据
处理请求的过程
- AFN : success 和 failure两个block
- ASI : 有三种方式处理请求过程(代理/SEL/block)
ASI特色 (*)
缓存
下载和上传
监听请求进度
实现断点下载 (断点上传使用socket技术)提供扩展接口
ASIDataCompressor.h
ASIDataDecompressor.hASIHttpRequest继承于NSOperation
使用队列统一管理请求
请求之间可以依赖ASINetworkQueue
统一管理所有请求
5个下载\ 上传请求 -> ASINetworkQueue : 监听5个请求的总进度
监听所有请求的开始\完毕\失败
shouldCancleAllRequestOnFailure
YES : 队列中某个请求失败,其他的都取消
NO : 队列中某个请求失败,其他的不受影响
AFN特色
- 使用简单
- 自带网络监控功能