首页 > 代码库 > 基于http的断点续传和多线程下载

基于http的断点续传和多线程下载

  HTTP协议的GET方法,支持只请求某个资源的某一部分;

  206 Partial Content 部分内容响应;

  Range 请求的资源范围;

  Content-Range 响应的资源范围;

断点续传:

  在连接断开重连时,客户端只请求该资源未下载的部分,而不是重新请求整个资源,来实现断点续传。

  分块请求资源实例: Eg1:Range: bytes=306302- :请求这个资源从306302个字节到末尾的部分; Eg2:Content-Range: bytes 306302-604047/604048:响应中指示携带的是该资源的第306302-604047的字节,该资源共604048个字节;

多线程下载:

  客户端通过并发的请求相同资源的不同片段,来实现对某个资源的并发分块下载。从而达到快速下载的目的。目前流行的FlashGet和迅雷基本都是这个原理。 多线程下载的原理:载工具开启多个发出HTTP请求的线程;每个http请求只请求资源文件的一部分:Content-Range: bytes 20000-40000/47000;合并每个线程下载的文件。

基于http的断点续传和多线程下载