`
zxs19861202
  • 浏览: 916019 次
  • 性别: Icon_minigender_1
  • 来自: 湖北—》上海
社区版块
存档分类
最新评论

AFNetWorking 3.0 用法

    博客分类:
  • ios
 
阅读更多

1、文件下载

AFHTTPSessionManager *manager=[AFHTTPSessionManagermanager];

    NSURLRequest *requestUrl=[NSURLRequestrequestWithURL:[NSURLURLWithString:url]];

    

    NSURLSessionDownloadTask *task=[manager downloadTaskWithRequest:requestUrl progress:^(NSProgress *downloadProgress){

        

        

        

        DLog(@"-下载进度---%f",downloadProgress.fractionCompleted);

        

        dispatch_sync(dispatch_get_main_queue(), ^(){

            

            [uiprogressviewsetProgress:downloadProgress.fractionCompletedanimated:YES];

        });

        

        

    

    } destination:^NSURL *(NSURL *targetPath, NSURLResponse *response){

    

        return [NSURLfileURLWithPath:downloadpath_now];

        

    } completionHandler:^(NSURLResponse *response, NSURL *filePath, NSError *error){

    

        DLog(@"----下载完成");

    

    }];

    

 

    [task resume];

 

 

2、post请求

 

AFHTTPSessionManager *manager = [AFHTTPSessionManagermanager];

    manager.requestSerializer.timeoutInterval = 30;

 

    manager.responseSerializer = [AFHTTPResponseSerializerserializer];

 

[manager POST:requestUrl parameters:nilconstructingBodyWithBlock:^(id<AFMultipartFormData> _Nonnull formData) {

            

            NSString *filePath=[parameters objectForKey:@"IMAGE"];

            UIImage *image=[UIImageimageWithContentsOfFile:filePath];

            

            NSData *imageData =UIImageJPEGRepresentation(image,1);

            

            NSDateFormatter *formatter = [[NSDateFormatteralloc] init];

            formatter.dateFormat =@"yyyyMMddHHmmss";

            NSString *str = [formatter stringFromDate:[NSDatedate]];

            NSString *fileName = [NSStringstringWithFormat:@"%@.jpg", str];

            

            //上传的参数(上传图片,以文件流的格式)

            [formData appendPartWithFileData:imageData

                                        name:@"IMAGE"

                                        fileName:fileName

                                        mimeType:@"image/jpeg"];

            

        } progress:^(NSProgress *_Nonnull uploadProgress) {

            //打印下上传进度

            

            DLog(@"上传进度----%lld-",uploadProgress.completedUnitCount);

            

        } success:^(NSURLSessionDataTask *_Nonnull task, id_Nullable responseObject) {

            //上传成功

            

            DLog(@"请求成功===response:%@", [[NSString alloc] initWithData:responseObject encoding:NSUTF8StringEncoding]);

           

                

           }else{

                

               

                

            }

            

 

            

        } failure:^(NSURLSessionDataTask *_Nullable task, NSError * _Nonnull error) {

            //上传失败

           

 

        }];

 

分享到:
评论

相关推荐

    AFNetWorking3.0

    本篇将深入探讨AFNetworking 3.0的核心特性、使用方法以及在实际项目中的应用。 一、AFNetworking 3.0核心特性 1. **Swift支持**:AFNetworking 3.0开始支持Swift语言,提供了Swift的API,使得Swift开发者也能轻松...

    iOS AFNetworking3.0支持ipv6

    "iOS AFNetworking3.0支持ipv6"这个标题表明AFNetworking已经更新到3.0版本,以兼容IPv6网络环境。 IPv6是互联网协议的第六版,是Internet Engineering Task Force(IETF)为解决IPv4地址耗尽问题而设计的一种新的...

    AFNetworking3.0

    AFNetworking 3.0是iOS应用开发中广泛使用的网络库,尤其在Objective-C编程环境下。这个框架极大地简化了网络请求的处理,提供了高效且灵活的API设计,使得开发者能够更专注于业务逻辑,而不是底层的HTTP交互。以下...

    AFNetworking 3.0 图片上传

    本教程将深入讲解如何使用AFNetworking 3.0实现图片上传功能,这对于任何涉及到用户交互和多媒体内容的应用都是至关重要的。 首先,我们需要了解AFNetworking 3.0的核心组件。AFNetworking主要由三个部分组成:`...

    iOSAFNetWorking3.0

    本文将深入探讨“iOS AFNetworking 3.0”,解析其核心特性和使用方法,帮助开发者更好地理解和应用这个框架。 AFNetworking 3.0是AFNetworking的第三个主要版本,它带来了许多改进和新特性,旨在提升性能、稳定性和...

    AFNetworking.3.0-兼容ipv6.zip

    在iOS开发中,AFNetworking是一个广泛使用的网络库,它提供了HTTP请求和响应的简便方法。在标题"AFNetworking.3.0-兼容ipv6.zip"中提到的“3.0”指的是AFNetworking的版本号,这表明我们关注的是该库的一个特定更新...

    《AFNetworking 3.0 源码解读》系列文章整理版

    AFNetworking 3.0是iOS开发中广泛使用的一个网络通信框架,由AFNetworking团队开发。本系列文章将对AFNetworking 3.0的源码进行详细的解读。通过阅读这些文章,开发者可以了解AFNetworking的工作原理,学习如何有效...

    HTTPS 双向认证 (AFNetworking 3.0)

    在AFNetworking 3.0版本中,实现双向认证涉及以下关键知识点: 1. **证书与公钥/私钥对**:在HTTPS中,证书用于验证身份,由权威的证书颁发机构(CA)签名。每个参与方(客户端和服务器)都有一个公钥和对应的私钥...

    swift-基于AFNetworking3.0封装的GET和POST请求上传下载

    AFNetworking 3.0对iOS8及以上系统进行了优化,使用了NSURLSession API,提升了性能和稳定性。 二、GET和POST请求封装 1. GET请求封装: GET请求通常用于获取服务器上的数据。首先,导入AFNetworking库,然后创建...

    swift-NetworkSample根据AFNetworking3.0框架封装的

    AFNetworking 3.0版本引入了许多改进和新特性,包括更好的错误处理、异步操作支持以及对NSURLSession的深入集成。 1. **HTTP 请求方法**:`swift-NetworkSample`封装了基本的HTTP请求方法,如GET、POST、PUT、...

    AFNetworking3.0.3

    下面将详细解析AFNetworking 3.0.3的核心功能、使用方法以及它在实际开发中的应用。 **一、核心功能** 1. **HTTP 请求与响应**:AFNetworking 提供了对 HTTP 协议的全面支持,包括 GET、POST、PUT、DELETE 等各种...

    swift-一个不用和后端干架的HTTP(S)网络库基于AFNetworking3.0

    `swift-一个不用和后端干架的HTTP(S)网络库基于AFNetworking3.0`项目,就是将`AFNetworking`的优秀特性移植到了Swift中,为开发者提供了一种更加方便的方式来处理HTTP和HTTPS网络通信。 `AFNetworking` 3.0版本引入...

    IOS 使用Block二次封装AFNetworking 3.0详解

    下面我们将详细讲解如何使用Block对AFNetworking 3.0进行二次封装。 首先,我们需要做前期准备,这包括导入AFNetworking第三方框架。AFNetworking可以通过CocoaPods或Carthage等依赖管理工具方便地引入到项目中。...

    iOS适配https证书问题(AFNetworking3.0为例)

    这篇文章以AFNetworking 3.0框架为例,详细讲述了如何在iOS应用中适配HTTPS证书,确保安全连接。 首先,你需要获取SSL证书。这通常由你的服务器后台提供。如果你拿到的是.crt格式的证书,你需要在终端中通过`...

    iOS利用AFNetworking3.0——实现文件断点下载

    在本篇文章中,我们将探讨如何利用AFNetworking 3.0实现文件的断点下载功能,这对于大文件下载尤其重要,因为它允许用户在下载过程中暂停、恢复,而不必从头开始。 首先,进行项目的准备工作。引入AFNetworking 3.0...

    AFN3.0封装

    具体使用方法可能需要查看该项目的文档或源代码。 总结,AFNetworking 3.0为iOS开发者提供了高效、稳定的网络请求解决方案,通过封装GET、POST、上传和下载等常用操作,可以极大地简化网络编程工作,提高开发效率。...

Global site tag (gtag.js) - Google Analytics