所谓断点续传其实就是在上一次下载断开的位置开始继续下载,所以在客户端浏览器传给Web服务器的时候要多加一条信息--从哪里开始。HTTP协议中,可以在请求报文头中加入Range段,来表示客户机希望从何处继续下载。
这是一个普通的下载请求:
- GET /test.txt HTTP/1.1
- Accept:*/*
- Referer:http://192.168.1.96
- Accept-Language:zh-cn
- Accept-Encoding:gzip,deflate
- User-Agent:Mozilla/4.0(compatible;MSIE 6.0;Windows NT 5.2;.NET CLR 2.0.50727)
- Host:192.168.1.96
- Connection:Keep-Alive
这表示从1024字节开始断点续传(加入了Range:bytes=1024-):
- GET /test.txt HTTP/1.1
- Accept:*/*
- Referer:http://192.168.1.96
- Accept-Language:zh-cn
- Accept-Encoding:gzip,deflate
- User-Agent:Mozilla/4.0(compatible;MSIE 6.0;Windows NT 5.2;.NET CLR 2.0.50727)
- Host:192.168.1.96
- Range:bytes=1024-
- Connection:Keep-Alive
高级iOS开发技术交流群:415239068,欢迎大家加入