AFNetWorking的使用

作者: RandomThoughts | 来源:发表于2016-06-20 08:49 被阅读0次
    AFNetWorking 是一个经常使用的第三方,它是一个轻量级的网络请求API类库,我们也可以通过它来对网络状态进行实时监测。(个人觉得这个第三方比自己以前根据GET 和 POST请求来封装的网络请求更加简单粗暴,喜欢的猿猿们可以对它再次封装哦!!!)

    1.GET请求

    AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
    manager.responseSerializer = [AFHTTPResponseSerializer serializer];
    [manager GET:@"网址" parameters:@"字典参数" progress:^(NSProgress *
    _Nonnull downloadProgress) {NSLog(@"下载时进度条进度");
    } success:^(NSURLSessionDataTask * _Nonnull task, id _NullableresponseObject) {
    NSLog(@"成功后回调的 responseObject 就是请求的 NSData 数据");} failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
    NSLog(@" 请求失败返回的error");}];
    

    2.POST请求

    AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
    manager.responseSerializer = [AFHTTPResponseSerializer serializer];
    [manager POST:@"网址" parameters:@"字典参数" progress:^(NSProgress *
    _Nonnull downloadProgress) {NSLog(@"下载时进度条进度");
    } success:^(NSURLSessionDataTask * _Nonnull task, id _NullableresponseObject) {
    NSLog(@"成功后回调的 responseObject 就是请求的 NSData 数据");} failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
    NSLog(@" 请求失败返回的error");}];
    

    3.实时监测网络状态

    AFNetworkReachabilityManager *manager = [AFNetworkReachabilityManagersharedManager];
    [manager setReachabilityStatusChangeBlock:^(AFNetworkReachabilityStatusstatus) {
          switch (status) {
               case AFNetworkReachabilityStatusUnknown:
                  NSLog(@"未识别的网络");
                  break;
               case AFNetworkReachabilityStatusNotReachable:
                  NSLog(@"无网络");
                  break;
               case AFNetworkReachabilityStatusReachableViaWWAN:
                   NSLog(@"2G,3G,4G...网络 ");
                   break;
               case AFNetworkReachabilityStatusReachableViaWiFi:
                   NSLog(@"wifi网络");
                   break;
                 default:
                      break;
         }
    }];
    [manager startMonitoring];
    

    相关文章

      网友评论

        本文标题:AFNetWorking的使用

        本文链接:https://www.haomeiwen.com/subject/vcdwdttx.html