zoukankan      html  css  js  c++  java
  • http断点续传原理:http头 Range、Content-Range

    所谓断点续传,也就是要从文件已经下载的地方开始继续下载。在以前版本的 HTTP 协议是不支持断点的,HTTP/1.1 开始就支持了。一般断点下载时才用到 Range 和 Content-Range 实体头。

    Range 

    用于请求头中,指定第一个字节的位置和最后一个字节的位置,一般格式:

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

    Content-Range

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

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

    请求下载整个文件: 

    1. GET /test.rar HTTP/1.1 
    2. Connection: close 
    3. Host: 116.1.219.219 
    4. Range: bytes=0-801 //一般请求下载整个文件是bytes=0- 或不用这个头

    一般正常回应

    1. HTTP/1.1 200 OK 
    2. Content-Length: 801      
    3. Content-Type: application/octet-stream 
    4. Content-Range: bytes 0-800/801 //801:文件总大小
  • 相关阅读:
    电感
    电容
    电阻
    函数异常规格说明
    异常处理深度解析
    自定义内存管理
    单例类模板
    数组类模板
    数组类模板
    类模板深度剖析
  • 原文地址:https://www.cnblogs.com/koal/p/5366143.html
Copyright © 2011-2022 走看看