iOS网络中下载文件之断点续传
2016-04-28 21:34
330 查看
FTP(文件传输协议的简称)(File Transfer Protocol、 FTP)客户端软件断点续传指的是在下载或上传时,将下载或上传任务(一个文件或一个压缩包)人为的划分为几个部分,每一个部分采用一个线程进行上传或下载,如果碰到网络故障,可以从已经上传或下载的部分开始继续上传下载未完成的部分,而没有必要从头开始上传下载。用户可以节省时间,提高速度-------转百度百科
以下载图片为例
代码搞起:
以下载图片为例
代码搞起:
#import "ViewController.h" @interface ViewController ()<NSURLConnectionDataDelegate> //在sb 上搞一个imageView @property (weak, nonatomic) IBOutlet UIImageView *imageView; @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; } - (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event { NSLog(@"touchesBegan"); //断点续传 /** 什么时候用断点续传? 想要从指定位置下载文件,指定下载的文件长度. 只要设置了请求头的 Range 属性,就可以获取到指定位置的文件内容. Range 格式: bytes=x-y :从x位置开始,下载y个字节. bytes=x- :从x位置开始,下载完毕. 断点续传的. bytes=-x :从开始下载x个字节. 一旦 Range 属性设置成功,服务器返回的响应行中的状态码就会变成 206. 下载/显示图片,下载图片 1/3 的数据. */ NSString *urlString = @"http://d.hiphotos.baidu.com/image/pic/item/2e2eb9389b504fc2065e2bd2e1dde71191ef6de0.jpg"; NSURL *url = [NSURL URLWithString:urlString]; // 1.创建请求. NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url]; NSString *range = @"bytes=0-6000"; //通过请求头设置数据请求范围 [request setValue:range forHTTPHeaderField:@"Range"]; // 2.发送同步请求 NSURLResponse *response = nil; // 同步下载图片数据. NSData *data = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:NULL]; NSLog(@"response:%@",response); // 展示图片 UIImage *image = [UIImage imageWithData:data]; NSLog(@"image:%@",image); self.imageView.image = image; // 图片: 想要展示不完整的图片数据,必须从0开始. }
相关文章推荐
- 服务器未能识别 HTTP 标头 SOAPAction 的值
- centos 6.5环境利用iscsi搭建SAN网络存储服务及服务端target和客户端initiator配置详解
- centos 6.5环境利用iscsi搭建SAN网络存储服务及服务端target和客户端initiator配置详解
- 设置Outlook客户端连接Exchange 2010服务器在低速或高速网络均使用https
- 网络流模板(模板题:POJ1273)
- 网络流模板(模板题:POJ1273)
- 用OMT方法建立其分析模型: 本大学基于网络的课程注册系统。
- POJ 1149 PIGS (AC这道题很不容易啊)网络流
- POJ 1149 PIGS (AC这道题很不容易啊)网络流
- android Http通信(访问web server)
- HTTP 常用状态码
- java TCP UDP网络部分总结
- Javascript创建XMLHttpRequest对象的3种方式
- 浅谈http协议
- iOS http 怎么设置cookie
- Qt下应用QTcpServer与QTcpSocket实现Tcp控制
- HTTP返回状态码
- Android利用tcpdump和wireshark抓取网络数据包
- Python web —— webbrowser + feedparser 网络爬虫刷博器
- tcp/ip--百度百科