iOS开发之网络编程--使用NSURLConnection实现文件上传

前言:使用NSURLConnection实现文件上传有点繁琐。

     本文并没有介绍使用第三方框架上传文件。

 

正文:

这里先提供用于编码测试的接口:http://120.25.226.186:32812  点击进去你会发现到下面:

最好该链接用Google浏览器打开,因为Google浏览器开启开发者模式用起来方便些。

然后可以选择一个图片,然后点击上传,链接就会变成:http://120.25.226.186:32812/upload ,这个链接后面编码上传文件就要用到。

浏览器呈现的请求信息,能够获取请求头信息和请求体信息,而这部分信息,上传文件编码需要的。

代码展示:

测试:

  

 源码百度云分享链接: http://pan.baidu.com/s/1dEhsH81 密码: 8qrm

时间: 2024-10-02 04:42:44

iOS开发之网络编程--使用NSURLConnection实现文件上传的相关文章

iOS开发之网络编程--使用NSURLConnection实现大文件断点续传下载

前言:iOS开发之网络编程--使用NSURLConnection实现大文件断点续传下载是在前篇iOS开发之网络编程--使用NSURLConnection实现大文件下载的基础上进行    断点续传的设置.关于iOS开发之网络编程--使用NSURLConnection实现大文件下载的细节这里当然就不会再累述的啦.   断点续传的原理:    每次在向服务器请求下载数据的同时,要告诉服务器从整个下载文件的数据流的某个还未下载的位置开始下载,然后服务器就返回从那个位置开始的数据流.    图片示意图:

iOS开发之网络编程--使用NSURLConnection实现大文件下载

主要思路(实现下载数据分段写入缓存中) 1.使用NSURLConnectionDataDelegate以及代理方法. 2.在成功获取响应的代理方法中,获得沙盒全路径,并在该路径下创建空文件和文件句柄. 3.在获取data的代理方法中,先设置句柄在沙盒全路径文件末尾,然后通过句柄写入data数据. 4.在文件下载完的代理方法中,关闭句柄同时设置句柄引用为nil释放句柄和指针. 使用句柄的思路图(红色的箭头表示句柄,灰色的箭头表示移动的路径): 代码关键词: 类:NSFileHandle的方法 1.

网络编程_多线程的文件上传小示例

http://blog.csdn.net/zsw101259/article/details/7768908 1.多线程文件的上传,数据流向  1).客户端Socket:       ①out File对象         ②out 文件内容         ③in 服务端反馈信息  2).服务端的处理         ①每接收一个Socket,创建一个线程去处理这个Socket          ②in File对象:判断文件的类型.选择不同的传输方式.创建File对象关联文件        

iOS开发之网络编程--5、NSURLSessionUploadTask+NSURLSessionDataDelegate代理上传

前言:关于NSURLSession的主要内容快到尾声了,这里就讲讲文件上传.关于文件上传当然就要使用NSURLSessionUploadTask,这里直接讲解常用的会和代理NSURLSessionDataDelegate一起搭配实现文件上传功能.另外,下面使用的文件上传思路是和NSURLConnection中本人之前的随笔<iOS开发之网络编程--使用NSURLConnection实现文件上传>提到的上传思路是一样的,都是要将请求信息拼接起来,然后传入到请求里进行上传.这个拼接过程是必要的,但

iOS开发之网络编程--4、NSURLSessionDataTask实现文件下载(离线断点续传下载) &lt;进度值显示优化&gt;

前言:根据前篇<iOS开发之网络编程--2.NSURLSessionDownloadTask文件下载>或者<iOS开发之网络编程--3.NSURLSessionDataTask实现文件下载(离线断点续传下载)>,都遗留了一个细节未处理的问题,那就是在离线断点下载的过程中,当应用程序重新启动之后,进度条的进度值默认没有设置为之前已经下载的进度,根据基本公式"当前进度值 = 已经下载的数据长度 ÷ 最终下载完的数据总长度",已经下载的数据长度可以由沙盒中已经下载的那

iOS开发之网络编程--3、NSURLSessionDataTask实现文件下载(离线断点续传下载)

前言:使用NSURLSessionDownloadTask满足不这个需要离线断点续传的下载需求,所以这里就需要使用NSURLSessionDataTask的代理方法来处理下载大文件,并且实现离线断点续传. 关于NSURLSessionDownloadTask的知识,可以请读者阅读本人的前篇:<iOS开发之网络编程--2.NSURLSessionDownloadTask文件下载>. 另外呢,因为NSURLSessionDownloadTask和NSURLSessionDataTask分别都是NS

Node.js开发教程之基于OnceIO框架实现文件上传和验证功能_node.js

OnceIO 是 OnceDoc 企业内容(网盘)的底层Web框架,它可以实现模板文件.静态文件的全缓存,运行起来完全不需要I/O操作,并且支持客户端缓存优化,GZIP压缩等(只在第一次压缩),拥有非常好的性能,为您节约服务器成本.它的模块化功能,可以让你的Web进行分布式存储,即一个扩展包里即包含前端.后端和数据库定义,只需通过添加/删除目录的方式就可实现功能删减,实现真正的模块化扩展.这里是介绍如何使用OnceIO的一系列文章. 在这一章节中,我们将为大家演示如何使用 OnceIO 实现文件

Swift HTTP网络操作库Alamofire实现文件上传详解

六,使用Alamofire进行文件上传 1,Alamofire支持如下上传类型: File Data Stream MultipartFormData 2,使用文件流的形式上传文件 let fileURL = NSBundle.mainBundle().URLForResource("hangge", withExtension: "zip")   Alamofire.upload(.POST, "http://www.hangge.com/upload.

ios开发之网络编程

上周末本应早写这个网络和MapKit的. 由于周六朋友聚会,周日送一朋友回远方,吃吃喝喝的就忘掉了. 网络编程基本是移动互联这块中必须掌握的编程技巧.由于我买的的小柚子书上没有这块, 最近刚买的开发秘籍那本上的关于网络链接这块,太抽象了. 首先吐槽一下这本书,细节描述的还是不错的.但是不合适做入门~ 然后在网络上搜索关于ios的网络编程基本就首页全是讲的同一篇文章,被转烂了. 找了半天没找到源文出处. 可以参考的一个地址:http://www.cocoachina.com/bbs/read.ph