AFNetworking在iOS網(wǎng)絡(luò)請(qǐng)求第三方庫中占據(jù)著半壁江山,前段時(shí)間將AFNetworking進(jìn)行了3.0版本的遷移,運(yùn)用面向?qū)ο蟮脑O(shè)計(jì)將代碼進(jìn)行封裝整合,這篇文章主要為還在尋找AFNetworking集成代碼或者準(zhǔn)備3.0遷移的各位童鞋們提供思路,同時(shí)自定義了字典模型轉(zhuǎn)換方法,需要的朋友也可以作為參考,還望各位老司機(jī)批評(píng)指正!先上代碼框架圖:
1、DB數(shù)據(jù)訪問層,在AFNetworkingManager中我將AFNetworking的GET/POST/DELETE/PUT方法封裝,提供了以下接口:
AFNetworking封裝
針對(duì)AFNetworking底層封裝AFNetworkingManager后,是不是就可以直接在Service調(diào)用GET/POST/DELETE/PUT接口訪問數(shù)據(jù)了呢?理論上是完全可以的,但是我們?cè)趯?shí)際開發(fā)中往往還需要自定義或者個(gè)性化一些效果如菊花等待框、陰影效果,提示文案等,所以本人建議在AFNetworkingManager基礎(chǔ)上再包裝一層專門用于Service對(duì)接,這樣的好處是Service層完全不必關(guān)心AFNetworking的封裝實(shí)現(xiàn)和序列化、授權(quán)等等問題,這樣也便于后續(xù)的維護(hù)與版本的升級(jí),好了我們?cè)倏纯磳?duì)接Service的ZTHttpManager:
ZTHttpManager封裝