AFNetWorking认知

3.0以后:AFNetworking只基于NSURLSession。

3.0之前:苹果将NSURLConnection淘汰了。


AFNetWorking认知_第1张图片

功能模块:

网络通信模块(NSURLSession)

网络状态监听模块(Reachability)

网络通信安全策略模块(Security)

网络通信信息序列化/反序列化模块(Serialization)

对于iOS UIKit库的扩展(UIKit)

整体原理:

AF的核心是AFURLSessionManager类,AFHTTPSessionManager继承于AFURLSessionManager, 针对HTTP协议传输做了特化。

而AFURLResponseSerialization, AFSecurityPolicy, AFNetworkReachabilityManager则被AFURLSessionManager所用。

深的认识:

过程:包括发起请求,阻塞等待网络响应,接收,拼接数据,数据解析

NSURLSession内部维护了两个操作队列,其实是有操作队列的,处理数据是并发的AFNetworking的并发在于响应到达后接收,拼接数据是在并发的操作队列B执行,数据解析是在另一个并发的操作队列C中执行。

你可能感兴趣的:(AFNetWorking认知)