AFNetworking 原始碼分析(一)

雲本尊發表於2018-05-21

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來做。

相關文章