KJNetworkPluginManager插件版網(wǎng)絡(luò)請(qǐng)求庫(kù)
資料介紹
軟件簡(jiǎn)介
KJNetworkPlugin?是一款基于面向協(xié)議的網(wǎng)絡(luò)抽象層的插件版網(wǎng)絡(luò)請(qǐng)求庫(kù),基于AFNetworking的基礎(chǔ)上再次封裝使用。
- 熟悉swift的朋友應(yīng)該都知道一款優(yōu)秀的三方庫(kù)Moya,插件版網(wǎng)絡(luò)請(qǐng)求是真香,于是乎借鑒思路制作一款純oc版本的插件網(wǎng)絡(luò)請(qǐng)求庫(kù)
- 熟悉oc的朋友又應(yīng)該都知道一款優(yōu)秀的三方庫(kù)YTKNetwork,基于對(duì)象的協(xié)議版網(wǎng)絡(luò)請(qǐng)求,然后他的批量網(wǎng)絡(luò)請(qǐng)求和鏈?zhǔn)骄W(wǎng)絡(luò)請(qǐng)求也超級(jí)香
-
結(jié)合一下兩者優(yōu)點(diǎn),制作一款
批量
和鏈?zhǔn)?/code>插件版網(wǎng)絡(luò)請(qǐng)求庫(kù)
- 目前整理九款插件:解析插件,緩存插件,配置自建證書(shū)插件,加載提示插件,修改請(qǐng)求插件,日志抓包插件,錯(cuò)誤碼插件,刷新插件,網(wǎng)絡(luò)錯(cuò)誤和空數(shù)據(jù)插件
功能清單
插件版網(wǎng)絡(luò)請(qǐng)求可以更方便快捷的定制專(zhuān)屬網(wǎng)絡(luò)請(qǐng)求,并且支持批量操作,鏈?zhǔn)讲僮?/p>
主要功能清單如下:
- 支持基本的網(wǎng)絡(luò)請(qǐng)求,下載上傳文件
- 支持配置通用請(qǐng)求跟路徑,通用參數(shù)等
- 支持設(shè)置加載和提示框插件
- 支持解析結(jié)果插件
- 支持網(wǎng)絡(luò)緩存插件
- 支持配置自建證書(shū)插件
- 支持修改請(qǐng)求體和獲取響應(yīng)結(jié)果插件
- 支持網(wǎng)絡(luò)日志抓包插件
- 支持刷新加載更多插件
- 支持錯(cuò)誤碼解析插件
- 支持錯(cuò)誤和空數(shù)據(jù)UI展示插件
- 支持批量操作
- 支持鏈?zhǔn)骄W(wǎng)絡(luò)請(qǐng)求
使用教程
模塊組成
簡(jiǎn)單講應(yīng)該分為這么幾大板塊:
- Chain:鏈?zhǔn)讲寮婢W(wǎng)絡(luò)請(qǐng)求
- Batch:批量插件版網(wǎng)絡(luò)請(qǐng)求
- Network:插件管理器和網(wǎng)絡(luò)請(qǐng)求基類(lèi)
- Plugins:插件集合,目前已有5款插件供使用 ? - Loading:加載錯(cuò)誤提示插件 ? - Anslysis:數(shù)據(jù)解析插件 ? - Cache:緩存插件 ? - Certificate:自建證書(shū)插件 ? - Thief:修改器插件 ? - Capture:網(wǎng)絡(luò)日志抓包插件 ? - Code:錯(cuò)誤碼插件 ? - Refresh:刷新插件 ? - Empty:網(wǎng)絡(luò)錯(cuò)誤和空數(shù)據(jù)UI插件
Network版塊
- KJBaseNetworking:網(wǎng)絡(luò)請(qǐng)求基類(lèi),基于 AFNetworking 封裝使用
- 這里也提供兩個(gè)入口,設(shè)置通用的根路徑和通用參數(shù),類(lèi)似:userID,token等
/// 根路徑地址
@property (nonatomic, strong, class) NSString *baseURL;
/// 基本參數(shù),類(lèi)似:userID,token等
@property (nonatomic, strong, class) NSDictionary *baseParameters;
- 封裝的有基本的網(wǎng)絡(luò)請(qǐng)求,上傳下載文件等方法
- KJNetworkingRequest:請(qǐng)求體,設(shè)置網(wǎng)絡(luò)請(qǐng)求相關(guān)參數(shù),其中包含參數(shù),請(qǐng)求方式,插件等等
- KJNetworkingResponse:響應(yīng)請(qǐng)求結(jié)果,獲取插件之間產(chǎn)生的數(shù)據(jù)等等
- KJNetworkingType:匯總所有枚舉和回調(diào)聲明
- KJNetworkBasePlugin:插件基類(lèi),插件父類(lèi)
- KJNetworkPluginManager:插件管理器,中樞神經(jīng)
/// 插件版網(wǎng)絡(luò)請(qǐng)求
/// @param request 請(qǐng)求體
/// @param success 成功回調(diào)
/// @param failure 失敗回調(diào)
+ (void)HTTPPluginRequest:(KJNetworkingRequest *)request success:(KJNetworkPluginSuccess)success failure:(KJNetworkPluginFailure)failure;
- 目前抽離出以下5條協(xié)議方法,其中大致分為開(kāi)始時(shí)刻、網(wǎng)絡(luò)請(qǐng)求時(shí)刻、網(wǎng)絡(luò)成功、網(wǎng)絡(luò)失敗、最終返回
/// 開(kāi)始準(zhǔn)備網(wǎng)絡(luò)請(qǐng)求
/// @param request 請(qǐng)求相關(guān)數(shù)據(jù)
/// @param endRequest 是否結(jié)束下面的網(wǎng)絡(luò)請(qǐng)求
/// @return 返回準(zhǔn)備插件處理后的數(shù)據(jù)
- (KJNetworkingResponse *)prepareWithRequest:(KJNetworkingRequest *)request endRequest:(BOOL *)endRequest;
/// 網(wǎng)絡(luò)請(qǐng)求開(kāi)始時(shí)刻請(qǐng)求
/// @param request 請(qǐng)求相關(guān)數(shù)據(jù)
/// @param stopRequest 是否停止網(wǎng)絡(luò)請(qǐng)求
/// @return 返回網(wǎng)絡(luò)請(qǐng)求開(kāi)始時(shí)刻插件處理后的數(shù)據(jù)
- (KJNetworkingResponse *)willSendWithRequest:(KJNetworkingRequest *)request stopRequest:(BOOL *)stopRequest;
/// 成功接收數(shù)據(jù)
/// @param request 請(qǐng)求相關(guān)數(shù)據(jù)
/// @param againRequest 是否需要再次請(qǐng)求該網(wǎng)絡(luò)
/// @return 返回成功插件處理后的數(shù)據(jù)
- (KJNetworkingResponse *)succeedWithRequest:(KJNetworkingRequest *)request againRequest:(BOOL *)againRequest;
/// 失敗處理
/// @param request 請(qǐng)求相關(guān)數(shù)據(jù)
/// @param againRequest 是否需要再次請(qǐng)求該網(wǎng)絡(luò)
/// @return 返回失敗插件處理后的數(shù)據(jù)
- (KJNetworkingResponse *)failureWithRequest:(KJNetworkingRequest *)request againRequest:(BOOL *)againRequest;
/// 準(zhǔn)備返回給業(yè)務(wù)邏輯時(shí)刻調(diào)用
/// @param request 請(qǐng)求相關(guān)數(shù)據(jù)
/// @param error 錯(cuò)誤信息
/// @return 返回最終加工之后的數(shù)據(jù)
- (KJNetworkingResponse *)processSuccessResponseWithRequest:(KJNetworkingRequest *)request error:(NSError **)error;
Plugins插件集合
目前已有9款插件供使用:
-
KJNetworkLoadingPlugin:基于MBProgressHUD封裝的加載框和錯(cuò)誤提示框插件
-
KJNetworkAnslysisPlugin:基于MJExtension封裝的解析數(shù)據(jù)插件
-
KJNetworkCachePlugin:基于YYCache封裝的網(wǎng)絡(luò)緩存插件
-
KJNetworkCertificatePlugin:配置自建證書(shū)插件
-
KJNetworkThiefPlugin:修改
KJNetworkingRequest
和獲取KJNetworkingResponse
插件 -
KJNetworkCapturePlugin:網(wǎng)絡(luò)日志抓包插件
-
KJNetworkCodePlugin:錯(cuò)誤碼解析插件
-
KJNetworkRefreshPlugin:刷新加載更多插件
-
KJNetworkEmptyPlugin:錯(cuò)誤信息和空數(shù)據(jù)UI展示插件
Chain鏈?zhǔn)讲寮W(wǎng)絡(luò)
Batch批量插件網(wǎng)絡(luò)
關(guān)于作者
- ?
- KICAD插件使用說(shuō)明書(shū) 8次下載
- TYPE C24PIN雙排插件原理圖 30次下載
- 12*12插件觸控開(kāi)關(guān)原理圖 4次下載
- 4.5*4.5插件觸控開(kāi)關(guān)原理圖 9次下載
- 將置信規(guī)則庫(kù)分級(jí)優(yōu)化的網(wǎng)絡(luò)安全態(tài)勢(shì)預(yù)測(cè)方法 11次下載
- Altium的常用接插件3D封裝庫(kù)資料合集免費(fèi)下載 0次下載
- Altium designer 3D插件電容專(zhuān)用元件庫(kù)免費(fèi)下載 322次下載
- MPLAB代碼配置器的LoRaWAN庫(kù)插件詳細(xì)中文數(shù)據(jù)手冊(cè)免費(fèi)下載
- Altium Designer常用接插件原理圖庫(kù)和pcb庫(kù) 0次下載
- 優(yōu)化安卓應(yīng)用3G/4G網(wǎng)絡(luò)請(qǐng)求能耗的方法 0次下載
- 以APP為起點(diǎn)構(gòu)建網(wǎng)絡(luò)請(qǐng)求架構(gòu) 0次下載
- 以APP為起點(diǎn)構(gòu)建網(wǎng)絡(luò)請(qǐng)求架構(gòu) 0次下載
- Android開(kāi)發(fā)的各大網(wǎng)絡(luò)請(qǐng)求庫(kù)實(shí)際案例 4次下載
- Altium-常用3D封裝庫(kù)(Step)【接插件篇】 (1) 0次下載
- 基于插件的網(wǎng)絡(luò)安全評(píng)估系統(tǒng)設(shè)計(jì) 24次下載
- Kubernetes的CNI網(wǎng)絡(luò)插件之flannel 228次閱讀
- 鴻蒙OS開(kāi)發(fā)實(shí)例:【窺探網(wǎng)絡(luò)請(qǐng)求】 818次閱讀
- 如何使用Proxyman抓取Android的https請(qǐng)求? 2420次閱讀
- 冪等和非冪等請(qǐng)求的一些定義和分析 851次閱讀
- 高并發(fā)場(chǎng)景下請(qǐng)求合并 411次閱讀
- Rust構(gòu)建QEMU插件的框架 934次閱讀
- 基于Nginx配置origin限制跨域請(qǐng)求 1393次閱讀
- 使用可計(jì)算SSD加速云原生數(shù)據(jù)庫(kù) 798次閱讀
- 如何使用 ESP-AT實(shí)現(xiàn)HTTP請(qǐng)求 1294次閱讀
- 干貨:如何構(gòu)建一個(gè)JavaScript插件系統(tǒng)(附源碼) 3094次閱讀
- Python如何爬取實(shí)時(shí)變化的WebSocket數(shù)據(jù) 3598次閱讀
- IO請(qǐng)求在block layer的來(lái)龍去脈 8403次閱讀
- NVIDIA深度神經(jīng)網(wǎng)絡(luò)加速庫(kù)cuDNN軟件安裝教程 2288次閱讀
- jquery插件有哪些_jquery插件大全(241個(gè)jquery插件) 1.2w次閱讀
- jquery插件寫(xiě)法及用法(jQuery插件開(kāi)發(fā)全解析) 1w次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
- 1.06 MB | 532次下載 | 免費(fèi)
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費(fèi)
- 3TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費(fèi)
- 5元宇宙深度解析—未來(lái)的未來(lái)-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費(fèi)
- 6迪文DGUS開(kāi)發(fā)指南
- 31.67 MB | 194次下載 | 免費(fèi)
- 7元宇宙底層硬件系列報(bào)告
- 13.42 MB | 182次下載 | 免費(fèi)
- 8FP5207XR-G1中文應(yīng)用手冊(cè)
- 1.09 MB | 178次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開(kāi)關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21549次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書(shū))
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德?tīng)栔?/a>
- 0.00 MB | 6656次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191187次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183279次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論