zoukankan      html  css  js  c++  java
  • AFNetworking 框架实例

     
    下载链接
    1   return json & xml 
      1 - (void)cctv01
      2 {
      3 
      4     // 1.获得请求管理者(管理请求, 帮助发请求)
      5 
      6     AFHTTPRequestOperationManager *mgr = [AFHTTPRequestOperationManager manager];
      7 
      8     // 声明服务器返回的数据是JSON
      9 
     10     //    mgr.responseSerializer = [AFJSONResponseSerializer serializer];
     11 
     12     
     13 
     14     // 2.封装请求参数
     15 
     16     NSMutableDictionary *params = [NSMutableDictionary dictionary];
     17 
     18     params[@"username"] = @"123";
     19 
     20     params[@"pwd"] = @"123";
     21 
     22     
     23 
     24     // 3.发送GET请求
     25 
     26     [mgr GET:@"http://192.168.1.200:8080/Server/login" parameters:params
     27 
     28      success:^(AFHTTPRequestOperation *operation, id responseObject) { //  responseObject : 在这种情况下是字典
     29 
     30          NSLog(@"请求成功---%@", responseObject);
     31 
     32      }
     33 
     34      failure:^(AFHTTPRequestOperation *operation, NSError *error) {
     35 
     36          NSLog(@"请求失败---%@", error);
     37 
     38      }];
     39 
     40 }
     41 
     42 -----------
     43 - (void)cctv02 (for json -> dictionary)
     44 
     45 {
     46 
     47     // 1.获得请求管理者
     48 
     49     AFHTTPRequestOperationManager *mgr = [AFHTTPRequestOperationManager manager];
     50 
     51     
     52 
     53     // 2.发送GET请求
     54 
     55     [mgr GET:@"http://192.168.1.200:8080/Server/video" parameters:nil
     56 
     57      success:^(AFHTTPRequestOperation *operation, NSDictionary *dict) { //  responseObject : 在这种情况下是字典
     58 
     59          NSLog(@"请求成功---%@", dict[@"videos"]);
     60 
     61      }
     62 
     63      failure:^(AFHTTPRequestOperation *operation, NSError *error) {
     64 
     65          NSLog(@"请求失败---%@", error);
     66 
     67      }];
     68 
     69 } 
     70 -----------
     71 - (void)cctv03 (for XML)
     72 
     73 {
     74 
     75     // 1.获得请求管理者
     76 
     77     AFHTTPRequestOperationManager *mgr = [AFHTTPRequestOperationManager manager];
     78 
     79     mgr.responseSerializer = [AFXMLParserResponseSerializer serializer];
     80 
     81     
     82 
     83     // 2.发送POST请求
     84 
     85     [mgr POST:@"http://192.168.1.200:8080/Server/video" parameters:@{@"type" : @"XML"}
     86 
     87      success:^(AFHTTPRequestOperation *operation, NSXMLParser *parser) {
     88 
     89          
     90 
     91      }
     92 
     93      failure:^(AFHTTPRequestOperation *operation, NSError *error) {
     94 
     95          NSLog(@"请求失败---%@", error);
     96 
     97      }];
     98 
     99 }
    100 
    101 -----------
    102 2  downloading & uploading the data
    103 - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
    104 
    105 {
    106 
    107     // 1.获得请求管理者
    108 
    109     AFHTTPRequestOperationManager *mgr = [AFHTTPRequestOperationManager manager];
    110 
    111     
    112 
    113     // 2.发送请求(做文件上传)
    114 
    115     // parameters : 只能放非文件参数
    116 
    117     NSMutableDictionary *params = [NSMutableDictionary dictionary];
    118 
    119     params[@"username"] = @"zhangsan";
    120 
    121     
    122 
    123     [mgr POST:@"http://192.168.1.200:8080/Server/upload" parameters:params
    124 
    125       constructingBodyWithBlock:^(id<AFMultipartFormData> formData) {
    126 
    127           // 一定要在这个block中添加文件参数
    128 
    129           
    130 
    131           // 加载文件数据
    132 
    133           NSString *file = [[NSBundle mainBundle] pathForResource:@"test.txt" ofType:nil];
    134 
    135           NSData *data = [NSData dataWithContentsOfFile:file];
    136 
    137           
    138 
    139           // 拼接文件参数
    140 
    141           [formData appendPartWithFileData:data name:@"file" fileName:@"123.txt" mimeType:@"text/plain"];
    142 
    143     }
    144 
    145       success:^(AFHTTPRequestOperation *operation, id responseObject) {
    146 
    147         NSLog(@"上传成功----%@", responseObject);
    148 
    149     } failure:^(AFHTTPRequestOperation *operation, NSError *error) {
    150 
    151         NSLog(@"上传失败----%@", error);
    152 
    153     }];
    154 
    155     
    156 
    157     ----------
    158 
    159 3  judge the network isOn
    160 
    161     // 1.获得网络监控的管理者
    162 
    163     AFNetworkReachabilityManager *mgr = [AFNetworkReachabilityManager sharedManager];
    164 
    165  
    166 
    167     // 2.设置网络状态改变后的处理
    168 
    169     [mgr setReachabilityStatusChangeBlock:^(AFNetworkReachabilityStatus status) {
    170 
    171         // 当网络状态改变了, 就会调用这个block
    172 
    173         switch (status) {
    174 
    175             case AFNetworkReachabilityStatusUnknown: // 未知网络
    176 
    177                 NSLog(@"未知网络");
    178 
    179                 break;
    180 
    181                 
    182 
    183             case AFNetworkReachabilityStatusNotReachable: // 没有网络(断网)
    184 
    185                 NSLog(@"没有网络(断网)");
    186 
    187                 break;
    188 
    189                 
    190 
    191             case AFNetworkReachabilityStatusReachableViaWWAN: // 手机自带网络
    192 
    193                 NSLog(@"手机自带网络");
    194 
    195                 break;
    196 
    197                 
    198 
    199             case AFNetworkReachabilityStatusReachableViaWiFi: // WIFI
    200 
    201                 NSLog(@"WIFI");
    202 
    203                 break;
    204 
    205         }
    206 
    207     }];
    208 
    209  
    210 
    211     // 3.开始监控
    212 
    213     [mgr startMonitoring];
    214 
    215     
    216 
    217 //    mgr.isReachableViaWiFi
    218 
    219  
    220 
    221 //    mgr.isReachableViaWWAN

     
     
  • 相关阅读:
    关于动态的添加iview admin路由以及刷新侧边栏按钮
    Qt配置,载入html,Echart, 交互
    junit、hamcrest和eclemma安装、使用
    程序中关于浮点数计算的问题
    洛谷P1164->小A点菜
    一道简单的题目
    P1101:单词方阵
    第一个博客
    php生成条形码
    php 上传音频(MP3、MP4等)文件 获取播放时间长度
  • 原文地址:https://www.cnblogs.com/qq449832375/p/4671830.html
Copyright © 2011-2022 走看看