iOS通过HTTP POST上传文件,代码如下:
//创建Request对象 NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init]; [request setURL:[NSURL URLWithString:urlStr]]; [request setHTTPMethod:@"POST"]; NSMutableData *body = [NSMutableData data]; //设置表单项分隔符 NSString *boundary = @"---------------------------14737809831466499882746641449"; //设置内容类型 NSString *contentType = [NSString stringWithFormat:@"multipart/form-data; boundary=%@",boundary]; [request addValue:contentType forHTTPHeaderField: @"Content-Type"]; //写入图片的内容 [body appendData:[[NSString stringWithFormat:@"--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]]; [body appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data; name=\"%@\"; filename=\"PIC_DATA1.jpg\"\r\n",@"PIC_DATA1"] dataUsingEncoding:NSUTF8StringEncoding]]; [body appendData:[@"Content-Type: image/jpeg\r\n\r\n" dataUsingEncoding:NSUTF8StringEncoding]]; [body appendData:[infoDic objectForKey:@"PIC_DATA1"]]; [body appendData:[[NSString stringWithFormat:@"\r\n"] dataUsingEncoding:NSUTF8StringEncoding]]; //写入INFO的内容 [body appendData:[[NSString stringWithFormat:@"--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]]; [body appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data; name=\"%@\"\r\n\r\n",@"PIC_INFO"] dataUsingEncoding:NSUTF8StringEncoding]]; [body appendData:jsonData]; [body appendData:[@"\r\n" dataUsingEncoding:NSUTF8StringEncoding]]; //写入尾部内容 [body appendData:[[NSString stringWithFormat:@"--%@--\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]]; [request setHTTPBody:body]; NSHTTPURLResponse *urlResponese = nil; NSError *error = [[NSError alloc]init]; NSData* resultData = [NSURLConnection sendSynchronousRequest:request returningResponse:&urlResponese error:&error]; NSDictionary *responseDic = [NSJSONSerialization JSONObjectWithData:resultData options:NSJSONReadingMutableLeaves error:nil];
相关推荐
说明:文件上传使用的时POST请求,通常把要上传的数据保存在请求体中。本文介绍如何不借助第三方框架实现iOS开发中得文件上传。 由于过程较为复杂,因此本文只贴出部分关键代码。 主控制器的关键代码: 代码如下:...
由于iOS无法通过html表单来上传文件,因此想要上传文件,必须实现http请求,而不能像其他语言那样通过html表单的post就能上传。此demo经过xcode5测试通过。此文件上传demo是按照 rfc1867协议实现的。
在iOS开发中,调用.NET WebService和上传文件是常见的任务,这涉及到网络通信和文件操作。本篇文章将深入探讨这两个关键知识点。 首先,让我们理解iOS如何与.NET WebService进行交互。WebService通常采用SOAP(简单...
在iOS开发中,上传文件是一项常见的任务,尤其是在构建应用程序时,比如用户需要上传照片、文档或者音频等。本文将详细讲解如何在iOS中实现文件上传功能,基于标题和描述,我们将重点讨论`UploadFile.m`和`...
然后,通过`setDoOutput(true)`开启写入模式,接着设置Content-Type为多部分表单数据(`multipart/form-data`),这是上传文件的标准格式。最后,我们使用`DataOutputStream`写入文件数据。 ```java URL url = new ...
- 使用`NSURLSessionUploadTask`进行文件上传,你需要创建一个`NSMutableURLRequest`对象,设置HTTP方法为"POST",然后通过`setHTTPBodyStream:`或`setHTTPBody:`设置上传的文件数据。 - 进度检测:通过`...
Network, 根据AFNetworking3.0框架封装的,实现了GET、POST、PUT、DELETE、上传文件、下载文件、文件上传下载进度条等功能,同时支持IPv6。 为什么使用它? 1、简单快捷,只需要一句代码即可请求网络和文件处理 ...
在iOS应用开发中,将图片上传到服务器是常见的功能需求,尤其在社交、电商或分享类应用中。本文将深入探讨如何实现这一过程,包括基本原理、所需技术以及实际操作步骤。 首先,我们需要理解基本的网络请求原理。iOS...
POST请求通常在需要提交表单数据、上传文件或执行其他需要传递复杂数据的操作时使用。下面将详细介绍如何在iOS中实现POST请求,以及相关的知识点。 首先,iOS开发主要使用Swift语言,所以我们讨论的是Swift环境下的...
总结来说,iOS通过HTTP POST上传图片涉及以下关键点: 1. 初始化`ASIFormDataRequest`对象并设置URL。 2. 定义请求体的边界字符串。 3. 构建请求体字符串,包括普通表单数据和图片数据。 4. 将请求体字符串转换为二...
在描述中提到的"浏览器端上传文件的简易jsp代码",指的是使用JavaServer Pages (JSP) 技术实现的前端文件上传界面。JSP是一种动态网页技术,它允许在服务器端生成HTML响应,并且可以嵌入Java代码来处理业务逻辑。...
在iOS应用开发中,与“打开照相机”和“打开本地相册”相关的功能是非常常见的需求,这使得用户能够方便地捕获新照片或者选择已有的图像进行上传。本篇文章将详细阐述如何在iOS应用中实现这些功能,并涵盖图片上传的...
以下是一个简单的上传文件示例: ```swift let fileURL = URL(fileURLWithPath: "/path/to/local/file.jpg") let url = URL(string: "https://api.example.com/upload")! manager.upload(fileURL, to: url, method...
- **文件上传**:在iOS客户端中,使用`NSURLConnection`或`NSURLSession`发起POST请求,将文件转换为NSData并通过HTTP请求发送给服务器。 - **文件下载**:发起GET请求获取文件数据,然后将其保存到本地。 **示例...
在移动应用开发中,文件上传是一项常见的功能,尤其在社交、云存储以及各种服务类应用中,用户常常需要上传图片、文档等数据。...通过合理地组织代码,可以构建出高效、用户体验良好的文件上传功能。
2. **HTTP POST请求**:POST是HTTP中的一个动词,用于向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的建立和/或已有资源的修改。在文件上传中,...
除了基础的POST请求,还可能涉及到上传文件、自定义请求头、携带Cookie等复杂情况。例如,上传图片时,需要将图片转换为Data对象并添加到请求体中;设置自定义请求头可以使用`setValue:forHTTPHeaderField:`方法;...
在移动应用开发中,无论是Android还是iOS,都有需求将用户选择的图片或文件上传到服务器并存储在数据库中。这个过程通常涉及到二进制流处理和Blob数据类型的使用。Blob,全称为Binary Large Object,是数据库系统中...
在iOS开发中,将图片上传到服务器是一项常见的需求,尤其在移动应用中,用户可能需要分享照片或保存数据到云端。本教程将详细介绍如何在iOS应用程序中实现这一功能,并提供服务器端Python代码作为参考,使用Flask...
iOS中用系统提供的API能实现能实现文件的上传与下载,分别有两种方式。NSURLConnection与NSURLSession。 其中NSURLConnection是使用很久的的一种方式,NSURLSession是新...*Content-Type:multipart/form-data(上传文件)