资料介绍
在现在的app,网络请求是一个很重要的部分,app中很多部分都有或多或少的网络请求,所以在一个项目重构时,我会选择网络请求框架作为我重构的起点。在这篇文章中我所提出的架构,并不是所谓的 最好 的网络请求架构,因为我只基于我这个app原有架构进行改善,更多的情况下我是以app为出发点,让这个网络架构能够在原app的环境下给我一个完美的结果,当然如果有更好的改进意见,我会很乐于尝试。
关于网络请求框架
一个好的网络请求框架对于一个团队来说是十分重要的。如果一个网络请求框架没有封装好,或者是在设计上存在问题,那么在开发上会造成许多问题,就拿这段代码作为例子:
[leaveAPI startWithCompletionBlockWith:^(BaseRequest *baseRequest, id responseObject) {
//check the response object
BOOL isSuccess = [leaveAPI validResponseObject:responseObject];
if (isSuccess) {
//do something.。。
}
} failure:^(BaseRequest *baseRequest) {
//do something.。。
}];
上面这段代码存在着不少的问题,比如把请求数据的判断放到了每一个请求中、在leaveAPI的块方法中再次调用leaveAPI、块参数中的baseRequest并没有实质作用等等……针对这些问题我会一一进行修正。
不要让其他人做请求数据有效与否的判断
在上面的代码中,对resposeObject是否有效的判断被设计成了BaseRequest类中的一个方法,程序员需要在调用网络请求后,再调用该方法对responseObject进行判断,这样的设计存在很大的弊端。
在实际应用中,很多时候程序员在调用网络请求后往往会忘记调用该方法对返回结果进行判断,甚至忘记了存在这个方法,自行对responseObject进行判断。首先这造成了大规模的代码重复,另一方面,不同程序员自己编写的判断方法散落在各个请求中,假如app在日后更新过程中改变了这个判断标准,会给修改带来很大困难。
- pytorch如何构建网络模型 0次下载
- 使用Raspberry Pi构建网络摄像头 0次下载
- 自智网络前沿技术白皮书 1次下载
- 网络架构的时钟系统——设计与验证
- 泰凌微蓝片芯片OTA的官方APP 4次下载
- 一种基于多视图架构的深度卷积神经网络模型 5次下载
- 一种分布式网络扫描架构和任务调度算法 19次下载
- 基于Android的果蝇识别APP 6次下载
- 如何使用ZigBee技术来设计无线传感器网络的详细构建与应用资料概述 18次下载
- 在线社交网络的高层架构 0次下载
- 优化安卓应用3G/4G网络请求能耗的方法 0次下载
- 以APP为起点构建网络请求架构 0次下载
- Android开发的各大网络请求库实际案例 4次下载
- 利用Sakai构建网络课程管理系统的研究与实践( 15次下载
- 网络互动型机械工程虚拟实验室的构建 23次下载
- 如何使用Proxyman抓取Android的https请求? 463次阅读
- 幂等和非幂等请求的一些定义和分析 280次阅读
- 使用ESP32-S3搭建网络摄像头 2556次阅读
- 开源网络引导固件iPXE正式支持龙架构 343次阅读
- iOS APP架构设计 816次阅读
- 5G-A通感融合网络架构及演进研究 1471次阅读
- 如何构建神经网络 1082次阅读
- 实施微服务架构:用于构建下一代云应用程序 510次阅读
- 三种网络硬件架构的原理及优劣势剖析 7192次阅读
- 构建一个相对较小的图像识别卷积神经网络 3067次阅读
- 网络架构对ResNet训练时间有什么影响 5244次阅读
- 一种新的高效神经架构搜索方法,解决了当前网络变换方法的局限性 6868次阅读
- IO请求在block layer的来龙去脉 8057次阅读
- 智能AP构建协同实现WLAN架构简单智能化 1661次阅读
- 3G和4G LTE网络架构之间的区别 4.3w次阅读
下载排行
本周
- 1电子电路原理第七版PDF电子教材免费下载
- 0.00 MB | 1490次下载 | 免费
- 2单片机典型实例介绍
- 18.19 MB | 92次下载 | 1 积分
- 3S7-200PLC编程实例详细资料
- 1.17 MB | 27次下载 | 1 积分
- 4笔记本电脑主板的元件识别和讲解说明
- 4.28 MB | 18次下载 | 4 积分
- 5开关电源原理及各功能电路详解
- 0.38 MB | 10次下载 | 免费
- 6基于AT89C2051/4051单片机编程器的实验
- 0.11 MB | 4次下载 | 免费
- 7蓝牙设备在嵌入式领域的广泛应用
- 0.63 MB | 3次下载 | 免费
- 89天练会电子电路识图
- 5.91 MB | 3次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234313次下载 | 免费
- 2PADS 9.0 2009最新版 -下载
- 0.00 MB | 66304次下载 | 免费
- 3protel99下载protel99软件下载(中文版)
- 0.00 MB | 51209次下载 | 免费
- 4LabView 8.0 专业版下载 (3CD完整版)
- 0.00 MB | 51043次下载 | 免费
- 5555集成电路应用800例(新编版)
- 0.00 MB | 33562次下载 | 免费
- 6接口电路图大全
- 未知 | 30320次下载 | 免费
- 7Multisim 10下载Multisim 10 中文版
- 0.00 MB | 28588次下载 | 免费
- 8开关电源设计实例指南
- 未知 | 21539次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935053次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537791次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420026次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234313次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233045次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191183次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183277次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138039次下载 | 免费
评论
查看更多