ASP源码.NET源码PHP源码JSP源码JAVA源码DELPHI源码PB源码VC源码VB源码Android源码
当前位置:首页 >> 低调看直播体育app软件下载 >> IOS开发 >> 网络请求方式 iOS重构——轻量级的网络请求封装实践

网络请求方式 iOS重构——轻量级的网络请求封装实践(1/6)

来源:网络整理     时间:2016-07-07     关键词:网络请求方式

本篇文章主要介绍了"网络请求方式 iOS重构——轻量级的网络请求封装实践",主要涉及到网络请求方式方面的内容,对于IOS开发感兴趣的同学可以参考一下: 授权转载,作者:Coder_CYX(微博)前言在十分钟搭建主流框架_简单的网络部分(OC)中,我们使用AFN框架顺利的发送网络请求并返回了有用数据,但对AFN框...

 iOS重构——轻量级的网络请求封装实践

授权转载,作者:Coder_CYX(微博)

前言

在十分钟搭建主流框架_简单的网络部分(OC)中,我们使用AFN框架顺利的发送网络请求并返回了有用数据,但对AFN框架的依赖十分严重,下面我们重构一下。

源码地址:https://github.com/CYXiang/CYXTenMinDemo

初步

很多时候,我们涉及到网络请求这块,都离不开几个第三方框架,AFNetworking,MJExtention, MBProgressHUD(SV)。

初学的时候,都会把它们写到Controller里面,如下:

[[AFHTTPSessionManager manager] GET:CYXRequestURL parameters:params success:^(NSURLSessionDataTask * _Nonnull task, id  _Nonnull responseObject) {
          NSLog(@"请求成功");
          // 利用MJExtension框架进行字典转模型
          weakSelf.menus = [CYXMenu objectArrayWithKeyValuesArray:responseObject[@"result"]];
          // 刷新数据(若不刷新数据会显示不出)
          [weakSelf.tableView reloadData];
      } failure:^(NSURLSessionDataTask * _Nonnull task, NSError * _Nonnull error) {
          NSLog(@"请求失败 原因:%@",error);
      }];

这样会造成耦合性过高的问题,灵活性也非常不好,因此,AFN的作者也推荐我们不要直接使用,新建一个网络请求类来继承AFN的使用方式更好。

因此,继承的方式,如下:

网络请求方式相关图片

网络请求方式相关文章