欢迎光临
我们一直在努力

好用的网络请求框架IOAApiManager,使用简单高效

建站超值云服务器,限时71元/月

好用的网络请求框架IOAApiManager,使用简单高效

项目介绍:


项目介绍:https://github.com/EarthMass/IOAApiManager
IOAApiManagerEasy to use network operate,网络请求框架对 YTKNetwork二次封装,使用方式多样,简单。
特点

  • 使用  特点
  • 四种使用  直接调用,block, delegate,以及YTKNetwork单接口一个一个写
  • 统一管理错误提示,以及alert弹出框
  • 可配置单接口是否显示提示alert
  • 可配置 单个接口 是否 token
  • 接收的数据直接转成模型model
  • 参数支持 dic, 以及 model传值
  • 支持图片以及文件的上传处理
  • 提示alert 可自己配置配置 使用不同的库
  • 使用时 针对不同的 url, 继承一个IOARequest类出来处理

pod 集成 ios8+

  1. pod ‘IOAApiManager’

复制代码手动集成,直接把代码拖到项目中 添加依赖

  1. pod ‘MJExtension’ ##数据解析
  2. pod ‘YTKNetwork’,’2.0.4′  ##网络
  3. pod ‘HXProgressHUD’ ##提示

复制代码

  1. #import "IOAApiManager/IOAApiManager.h"
  2. #import "TestApi.h"
  3. #import "UploadApi.h"
  4. @interface AppDelegate ()<IOARequestDelegate>
  5. @end
  6. @implementation AppDelegate
  7. – (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
  8.     //https 配置,token 验证,需要先保存[saveToken]。
  9.    
  10.     //配置 网络地址
  11.     [IOAApiManager configNetworkWithBaseUrl:@"xxxxx"];
  12.    
  13. #pragma mark- 三种方式 请求,前两需要继承自IOARequest 最后项 直接 调用
  14.         TestApiRequestEntity * requestEntity = [[TestApiRequestEntity alloc] init];
  15.         requestEntity.appId = @"35C49FCB-F472-4B41-AD73-1EA3F4778380";
  16.         requestEntity.phone = @"xxxxx";
  17.         requestEntity.code = @"00000";
  18.         //测试请求 block
  19.         TestApi * api = [[TestApi alloc] initWithModel:requestEntity respEntityName:@"TestApiRespEntity"];
  20.         [api startWithBlockWithResult:^(IOAResponse *resp) {
  21.             NSLog(@"data %@",resp.responseObject);
  22.             UIAlertView * alertV = [[UIAlertView alloc] initWithTitle:@"提示" message:[resp.responseObject mj_JSONString] delegate:nil cancelButtonTitle:@"取消" otherButtonTitles:nil, nil];
  23.             [alertV show];
  24.         }];
  25.         /*
  26.          测试请求 delegate ,
  27.          有指定 respMethodStr 回调为 respMethodStr
  28.          未指定默认为ioaResult
  29.          */
  30.         TestApi * apiDelegate = [[TestApi alloc] initWithModel:nil respEntityName:@"TestApiRespEntity"];
  31.         [apiDelegate startWithCompletionWithDelegate:self respMethodStr:@"getTestApi:"];
  32. //         [api startWithCompletionWithDelegate:self respMethodStr:nil];
  33.         //block快捷方式
  34.         IOARequest * apiBlock = [IOARequest new];
  35.         apiBlock.needShowHud = @0; //是否显示hud
  36.         apiBlock.needAuthor = @0; //是否 需要验签
  37.         [apiBlock startInBlockWithType:YTKRequestMethodPOST model:requestEntity  uri:@"ecloud/api/v1/app_login/code" respEntityName:@"TestApiRespEntity" result:^(IOAResponse *resp) {
  38.             NSLog(@"data %@",resp.responseObject);
  39.         }];
  40.         //资源上传
  41.         UploadApi * uploadApi = [[UploadApi alloc] initWithModel:nil respEntityName:nil];
  42.         [uploadApi uploadImageDic:@{@"11":[UIImage imageNamed:@"666.jpg"]}];
  43.         [uploadApi startWithBlockWithResult:^(IOAResponse *resp) {
  44.             NSLog(@"");
  45.         }];
  46.    
  47.     return YES;
  48. }
  49. //未指定 默认回调方法
  50. – (void)ioaResult:(IOAResponse *)result {
  51.    
  52.     NSLog(@"data");
  53. }
  54. //指定 回调方法
  55. – (void)getTestApi:(IOAResponse *)result {
  56.    
  57.     NSLog(@"data");
  58. }

复制代码

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 好用的网络请求框架IOAApiManager,使用简单高效
分享到: 更多 (0)