AFNetworking 源码分析(一)

AFNetworking 源码分析(一)

AF主要分为如下5个模块:

  1. 网络通讯模块(AFURLSessionManager、AFHTTPSessionManger)
  2. 网络状态监听模块(Reachability)
  3. 网络通讯安全策略模块(Security)
  4. 网络通讯信息序列化/反序列化模块(Serialization)
  5. 对于iOS UIKit库的扩展(UIKit)

其中的核心是AFURLSessionManager。 AFURLSessionManager主要是对NSURLSession的封装,AFHTTPSessionManager是继承AFURLSessionManager,这个类并无作什么,主要是作了一些简单的封装,最终请求都是分发给了父类去作。安全

首先咱们简略的分析一下一个网络请求的流程是怎样的:网络

  1. 第一步,咱们将请求的url,参数编码成咱们请求时须要的request,在AF中这个主要是由AFURLRequestSerialization来作。
  2. 第二步,咱们就要开始发起请求,在AF中这个主要是由AFURLSessionManager来作。
  3. 第三步,请求成功后对返回的数据进行处理,在AF中这个主要是由AFURLResponsesSerialization来作。
相关文章
相关标签/搜索