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