KJNetworkPluginManager插件版網(wǎng)絡(luò)請求庫
資料介紹
軟件簡介
KJNetworkPlugin?是一款基于面向協(xié)議的網(wǎng)絡(luò)抽象層的插件版網(wǎng)絡(luò)請求庫,基于AFNetworking的基礎(chǔ)上再次封裝使用。
- 熟悉swift的朋友應(yīng)該都知道一款優(yōu)秀的三方庫Moya,插件版網(wǎng)絡(luò)請求是真香,于是乎借鑒思路制作一款純oc版本的插件網(wǎng)絡(luò)請求庫
- 熟悉oc的朋友又應(yīng)該都知道一款優(yōu)秀的三方庫YTKNetwork,基于對象的協(xié)議版網(wǎng)絡(luò)請求,然后他的批量網(wǎng)絡(luò)請求和鏈?zhǔn)骄W(wǎng)絡(luò)請求也超級香
-
結(jié)合一下兩者優(yōu)點(diǎn),制作一款
批量
和鏈?zhǔn)?/code>插件版網(wǎng)絡(luò)請求庫
- 目前整理九款插件:解析插件,緩存插件,配置自建證書插件,加載提示插件,修改請求插件,日志抓包插件,錯誤碼插件,刷新插件,網(wǎng)絡(luò)錯誤和空數(shù)據(jù)插件
功能清單
插件版網(wǎng)絡(luò)請求可以更方便快捷的定制專屬網(wǎng)絡(luò)請求,并且支持批量操作,鏈?zhǔn)讲僮?/p>
主要功能清單如下:
-
支持基本的網(wǎng)絡(luò)請求,下載上傳文件
-
支持配置通用請求跟路徑,通用參數(shù)等
-
支持設(shè)置加載和提示框插件
-
支持解析結(jié)果插件
-
支持網(wǎng)絡(luò)緩存插件
-
支持配置自建證書插件
-
支持修改請求體和獲取響應(yīng)結(jié)果插件
-
支持網(wǎng)絡(luò)日志抓包插件
-
支持刷新加載更多插件
-
支持錯誤碼解析插件
-
支持錯誤和空數(shù)據(jù)UI展示插件
-
支持批量操作
-
支持鏈?zhǔn)骄W(wǎng)絡(luò)請求
使用教程
模塊組成
簡單講應(yīng)該分為這么幾大板塊:
-
Chain:鏈?zhǔn)讲寮婢W(wǎng)絡(luò)請求
-
Batch:批量插件版網(wǎng)絡(luò)請求
-
Network:插件管理器和網(wǎng)絡(luò)請求基類
-
Plugins:插件集合,目前已有5款插件供使用 ? - Loading:加載錯誤提示插件 ? - Anslysis:數(shù)據(jù)解析插件 ? - Cache:緩存插件 ? - Certificate:自建證書插件 ? - Thief:修改器插件 ? - Capture:網(wǎng)絡(luò)日志抓包插件 ? - Code:錯誤碼插件 ? - Refresh:刷新插件 ? - Empty:網(wǎng)絡(luò)錯誤和空數(shù)據(jù)UI插件
Network版塊
-
KJBaseNetworking:網(wǎng)絡(luò)請求基類,基于 AFNetworking 封裝使用
-
這里也提供兩個入口,設(shè)置通用的根路徑和通用參數(shù),類似:userID,token等
/// 根路徑地址
@property (nonatomic, strong, class) NSString *baseURL;
/// 基本參數(shù),類似:userID,token等
@property (nonatomic, strong, class) NSDictionary *baseParameters;
-
封裝的有基本的網(wǎng)絡(luò)請求,上傳下載文件等方法
-
KJNetworkingRequest:請求體,設(shè)置網(wǎng)絡(luò)請求相關(guān)參數(shù),其中包含參數(shù),請求方式,插件等等
-
KJNetworkingResponse:響應(yīng)請求結(jié)果,獲取插件之間產(chǎn)生的數(shù)據(jù)等等
-
KJNetworkingType:匯總所有枚舉和回調(diào)聲明
-
KJNetworkBasePlugin:插件基類,插件父類
-
KJNetworkPluginManager:插件管理器,中樞神經(jīng)
/// 插件版網(wǎng)絡(luò)請求
/// @param request 請求體
/// @param success 成功回調(diào)
/// @param failure 失敗回調(diào)
+ (void)HTTPPluginRequest:(KJNetworkingRequest *)request success:(KJNetworkPluginSuccess)success failure:(KJNetworkPluginFailure)failure;
-
目前抽離出以下5條協(xié)議方法,其中大致分為開始時刻、網(wǎng)絡(luò)請求時刻、網(wǎng)絡(luò)成功、網(wǎng)絡(luò)失敗、最終返回
/// 開始準(zhǔn)備網(wǎng)絡(luò)請求
/// @param request 請求相關(guān)數(shù)據(jù)
/// @param endRequest 是否結(jié)束下面的網(wǎng)絡(luò)請求
/// @return 返回準(zhǔn)備插件處理后的數(shù)據(jù)
- (KJNetworkingResponse *)prepareWithRequest:(KJNetworkingRequest *)request endRequest:(BOOL *)endRequest;
/// 網(wǎng)絡(luò)請求開始時刻請求
/// @param request 請求相關(guān)數(shù)據(jù)
/// @param stopRequest 是否停止網(wǎng)絡(luò)請求
/// @return 返回網(wǎng)絡(luò)請求開始時刻插件處理后的數(shù)據(jù)
- (KJNetworkingResponse *)willSendWithRequest:(KJNetworkingRequest *)request stopRequest:(BOOL *)stopRequest;
/// 成功接收數(shù)據(jù)
/// @param request 請求相關(guān)數(shù)據(jù)
/// @param againRequest 是否需要再次請求該網(wǎng)絡(luò)
/// @return 返回成功插件處理后的數(shù)據(jù)
- (KJNetworkingResponse *)succeedWithRequest:(KJNetworkingRequest *)request againRequest:(BOOL *)againRequest;
/// 失敗處理
/// @param request 請求相關(guān)數(shù)據(jù)
/// @param againRequest 是否需要再次請求該網(wǎng)絡(luò)
/// @return 返回失敗插件處理后的數(shù)據(jù)
- (KJNetworkingResponse *)failureWithRequest:(KJNetworkingRequest *)request againRequest:(BOOL *)againRequest;
/// 準(zhǔn)備返回給業(yè)務(wù)邏輯時刻調(diào)用
/// @param request 請求相關(guān)數(shù)據(jù)
/// @param error 錯誤信息
/// @return 返回最終加工之后的數(shù)據(jù)
- (KJNetworkingResponse *)processSuccessResponseWithRequest:(KJNetworkingRequest *)request error:(NSError **)error;
Plugins插件集合
目前已有9款插件供使用:
-
KJNetworkLoadingPlugin:基于MBProgressHUD封裝的加載框和錯誤提示框插件
-
KJNetworkAnslysisPlugin:基于MJExtension封裝的解析數(shù)據(jù)插件
-
KJNetworkCachePlugin:基于YYCache封裝的網(wǎng)絡(luò)緩存插件
-
KJNetworkCertificatePlugin:配置自建證書插件
-
KJNetworkThiefPlugin:修改KJNetworkingRequest
和獲取KJNetworkingResponse
插件
-
KJNetworkCapturePlugin:網(wǎng)絡(luò)日志抓包插件
-
KJNetworkCodePlugin:錯誤碼解析插件
-
KJNetworkRefreshPlugin:刷新加載更多插件
-
KJNetworkEmptyPlugin:錯誤信息和空數(shù)據(jù)UI展示插件
Chain鏈?zhǔn)讲寮W(wǎng)絡(luò)
Batch批量插件網(wǎng)絡(luò)
關(guān)于作者
-
?
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
-
KICAD插件使用說明書
8次下載
-
TYPE C24PIN雙排插件原理圖
30次下載
-
12*12插件觸控開關(guān)原理圖
4次下載
-
4.5*4.5插件觸控開關(guān)原理圖
9次下載
-
將置信規(guī)則庫分級優(yōu)化的網(wǎng)絡(luò)安全態(tài)勢預(yù)測方法
11次下載
-
Altium的常用接插件3D封裝庫資料合集免費(fèi)下載
0次下載
-
Altium designer 3D插件電容專用元件庫免費(fèi)下載
322次下載
-
MPLAB代碼配置器的LoRaWAN庫插件詳細(xì)中文數(shù)據(jù)手冊免費(fèi)下載
-
Altium Designer常用接插件原理圖庫和pcb庫
0次下載
-
優(yōu)化安卓應(yīng)用3G/4G網(wǎng)絡(luò)請求能耗的方法
0次下載
-
以APP為起點(diǎn)構(gòu)建網(wǎng)絡(luò)請求架構(gòu)
0次下載
-
以APP為起點(diǎn)構(gòu)建網(wǎng)絡(luò)請求架構(gòu)
0次下載
-
Android開發(fā)的各大網(wǎng)絡(luò)請求庫實際案例
4次下載
-
Altium-常用3D封裝庫(Step)【接插件篇】 (1)
0次下載
-
基于插件的網(wǎng)絡(luò)安全評估系統(tǒng)設(shè)計
24次下載
-
Kubernetes的CNI網(wǎng)絡(luò)插件之flannel
228次閱讀
-
鴻蒙OS開發(fā)實例:【窺探網(wǎng)絡(luò)請求】
818次閱讀
-
如何使用Proxyman抓取Android的https請求?
2420次閱讀
-
冪等和非冪等請求的一些定義和分析
851次閱讀
-
高并發(fā)場景下請求合并
411次閱讀
-
Rust構(gòu)建QEMU插件的框架
934次閱讀
-
基于Nginx配置origin限制跨域請求
1393次閱讀
-
使用可計算SSD加速云原生數(shù)據(jù)庫
798次閱讀
-
如何使用 ESP-AT實現(xiàn)HTTP請求
1294次閱讀
-
干貨:如何構(gòu)建一個JavaScript插件系統(tǒng)(附源碼)
3094次閱讀
-
Python如何爬取實時變化的WebSocket數(shù)據(jù)
3598次閱讀
-
IO請求在block layer的來龍去脈
8403次閱讀
-
NVIDIA深度神經(jīng)網(wǎng)絡(luò)加速庫cuDNN軟件安裝教程
2288次閱讀
-
jquery插件有哪些_jquery插件大全(241個jquery插件)
1.2w次閱讀
-
jquery插件寫法及用法(jQuery插件開發(fā)全解析)
1w次閱讀
下載排行
本周
- 1第十一屆 藍(lán)橋杯 單片機(jī)設(shè)計與開發(fā)項目 省賽 程序設(shè)計試題及源碼
- 90.88KB | 23次下載 | 3 積分
- 2輕松解碼串口通信
- 509.30 KB | 3次下載 | 免費(fèi)
- 3STM32F103C8T6開發(fā)板最小系統(tǒng)原理圖
- 0.78 MB | 1次下載 | 免費(fèi)
- 4LT8822SS共漏N溝道增強(qiáng)型場效應(yīng)晶體管規(guī)格書
- 1.22 MB | 1次下載 | 免費(fèi)
- 5ACDC茂睿芯MK2687寬供電范圍高效率反激 PWM 控制器
- 2.28 MB | 1次下載 | 免費(fèi)
- 6LTS3002FJI N溝道增強(qiáng)型功率MOSFET規(guī)格書
- 1.30 MB | 次下載 | 免費(fèi)
- 7ESD保護(hù)器件ESD0504TL規(guī)格書
- 2.97 MB | 次下載 | 免費(fèi)
- 8ESD保護(hù)器件GBLCxxCI系列規(guī)格書
- 2.85 MB | 次下載 | 免費(fèi)
本月
- 1STM32開發(fā)板教程之STM32開發(fā)指南免費(fèi)下載
- 24.88 MB | 177次下載 | 3 積分
- 2EN60335-1安規(guī)標(biāo)準(zhǔn) 中文版本
- 1.86 MB | 53次下載 | 1 積分
- 3DeepSeek從入門到精通
- 5.07 MB | 38次下載 | 免費(fèi)
- 4第十一屆 藍(lán)橋杯 單片機(jī)設(shè)計與開發(fā)項目 省賽 程序設(shè)計試題及源碼
- 90.88KB | 23次下載 | 3 積分
- 5NR-E531TX-XN冰箱說明書
- 8.64 MB | 19次下載 | 免費(fèi)
- 6STM32單片機(jī)無人機(jī)設(shè)計
- 8.81 MB | 10次下載 | 免費(fèi)
- 7華為硬件工程師手冊目前最全版本
- 1.02 MB | 8次下載 | 2 積分
- 8MAX9295電路圖
- 0.14 MB | 6次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935126次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計
- 1.48MB | 420063次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233088次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191377次下載 | 10 積分
- 5十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183336次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81584次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73814次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65988次下載 | 10 積分
評論