断点续传原理备注

断点续传基于http/1.1协议实现,实际使用中主要靠修改http 请求消息头的range:

  指定第一个字节的位置和最后一个字节的位置,一般格式:

  Range:(unit=first byte pos)-[last byte pos] 

实际代码实现在请求下载时,读取待下载文件大小并给header赋值:

long size = file.length();
Header header = new BasicHeader("Range", "bytes=" + size + "-");
request.addHeader(header);

 http协议在response里会包含Content-Range:

  指定整个实体中的一部分的插入位置,他也指示了整个实体的长度。在服务器向客户返回一个部分响应,它必须描述响应覆盖的范围和整个实体长度。一般格式: 

  Content-Range: bytes (unit first byte pos) - [last byte pos]/[entity legth] 

原文地址:https://www.cnblogs.com/Fredric-2013/p/5420075.html