前言:從以前的ASI到AF表悬,通常都是拿來直接用,然后上個項目中用了基于AF的YTKNetwork账月,這種相比之前集約型的網(wǎng)絡(luò)請求,雖然離散但很清晰澳迫。然而項目不復(fù)雜局齿,用YTKNetwork似乎有點殺雞用牛刀了,于是在YTKNetwork的基礎(chǔ)上修改封裝了輕量級的網(wǎng)絡(luò)庫KKNetworking纲刀。
下面是簡單介紹:
KKNetworkConfig類
(存放一些全局通用的參數(shù))
baseUrl 服務(wù)器地址
AFSecurityPolicy 安全策略 https認(rèn)證
requestMethod 請求方式 默認(rèn)Post
requestTimeoutInterval 超時時間 默認(rèn)20s
requestHeaderFieldValueDictionary 請求頭
可在AppDelegate配置
YTKNetwork中用的最舒服的就是在基類中可以全局設(shè)置超時時間、消息請求頭等基礎(chǔ)信息担平,于是修改的時候把這些都放到了config類中可以全局設(shè)置示绊。
KKNetworkRequest類
(主要使用的類)
---------------請求設(shè)置---------------
requestUrl 請求地址
requestArgument 請求參數(shù)
requestMethod 請求方式
requestTimeoutInterval 超時時間
requestHeaderFieldValueDictionary 請求頭
---------------返回數(shù)據(jù)---------------
responseData,responseJSONObject暂论,responseObject面褐,responseString,error
isResponseSerializerTypeHTTP默認(rèn)返回數(shù)據(jù)Json解析取胎,可設(shè)置為YES展哭,則為HTTP序列化,不對數(shù)據(jù)進(jìn)行解析 (通常用于一些小型文件下載)
在request的類中
- (BOOL)statusCodeValidator 這個方法也是來自YTK闻蛀,可以做一些全局的請求成功后狀態(tài)碼檢查【比如接口返回的相關(guān)錯誤碼統(tǒng)一處理】
KKNetworkManager類
(請求主要發(fā)起類)
初始化時讀取config的一些配置
在處理request請求時 優(yōu)先取request的參數(shù)處理
沒有時取config的默認(rèn)設(shè)置(如請求方式匪傍,超時時間,請求頭等)
發(fā)起請求接受數(shù)據(jù)進(jìn)行成功與失敗的回調(diào)
KKNetworkTools類
一些常用的方法封裝
這個網(wǎng)絡(luò)庫簡單到幾乎只封裝了Get觉痛、Post請求役衡,適合一些小型項目使用,也可以根據(jù)業(yè)務(wù)需求在這基礎(chǔ)上進(jìn)行擴展薪棒。
Demo地址:KKNetworking