AFNetworking基本是iOS開(kāi)發(fā)中的網(wǎng)絡(luò)第三方庫(kù)標(biāo)配,或許工作中使用的只是一個(gè)請(qǐng)求的接口,對(duì)他的實(shí)現(xiàn)原理不是很清楚,接下來(lái)就看一下這個(gè)框架代碼的結(jié)構(gòu),再逐步理解它各個(gè)核心類所起的作用,這樣理解了它的思想后,才會(huì)明白我們的請(qǐng)求是如何實(shí)現(xiàn)的,
AFN 歷史版本
Paste_Image.png
從這里可以看到3.0 只能適應(yīng)于7.0的系統(tǒng)
文件系統(tǒng)
Paste_Image.png
AFN 四大模塊
Paste_Image.png
1、** NSURLsession**
主要對(duì)象NSURLSession對(duì)象進(jìn)行了進(jìn)一步的封裝,包含以下核心的類:
AFURLSessionManager
AFHTTPSessionManager
2、網(wǎng)絡(luò)狀態(tài)
主要是對(duì)SCNetworkReachabilityRef對(duì)象的進(jìn)一步封裝,包含以下核心的類:
AFNetworkReachabilityManager
3、安全
提供了與安全性相關(guān)的操作接口,包含以下核心的類:
AFSecurityPolicy
4、序列化
提供了與解析數(shù)據(jù)相關(guān)的操作接口,包含以下核心的類:
AFURLRequestSerialization
AFURLResponseSerialization