HTTP头中一般断点下载时才用到Range和Content-Range实体头,
Range用户请求头中,指定第一个字节的位置和最后一个字节的位置,如(Range:200-300)
Content-Range用于响应头
请求下载整个文件:
***********************************
GET /test.rar HTTP/1.1
Connection: close
Host: 116.1.219.219
Range: bytes=0-100
***********************************
Range头域可以请求实体的一个或者多个子范围,Range的值为0表示第一个字节,也就是Range计算字节数是从0开始的
表示头500个字节:bytes=0-499
表示第二个500字节:bytes=500-999
表示最后500个字节:bytes=-500
表示500字节以后的范围:bytes=500-
第一个和最后一个字节:bytes=0-0,-1
同时指定几个范围:bytes=500-600,601-999
一般正常回应
***********************************
HTTP/1.1 206 OK
Content-Length: 801
Content-Type: application/octet-stream
Content-Location: http://www.onlinedown.net/hj_index.htm
Content-Range: bytes 0-100/2350 //2350:文件总大小
Last-Modified: Mon, 16 Feb 2009 16:10:12 GMT
Accept-Ranges: bytes
ETag: "d67a4bc5190c91:512"
Server: Microsoft-IIS/6.0
Date: Wed, 18 Feb 2009 07:55:26 GMT
***********************************
注意:如果用户的请求中含有range ,则服务器的相应代码为206。
206 - Partial Content 客户发送了一个带有Range头的GET请求,服务器完成了它(HTTP 1.1新)。
分享到:
相关推荐
解析内容范围标题解析http响应的Content-Range标头例子npm i -S @ironsource/parse-content-range-header const parseContentRangeHeader = require ( '@ironsource/parse-content-range-header' )try { console ....
- 当服务器成功处理 Range 请求时,会返回 `206 Partial Content` 状态码,并在响应头中包含 `Content-Range` 字段,表明实际返回的文件部分。例如,`Content-Range: bytes 500-999/1500` 表示返回了文件的第 500 ...
// Parsing and creating 'Content-Range' headerContentRange . prototype . parse ( 'bytes 0-49/50' ) ; // Content-Range: bytes 0-49/50new ContentRange ( 'bytes' , '0-49' , 50 ) . toString ( ) ; // => ...
除了CONTENT_LENGTH和CONTENT_TYPE之外,所有其他的HTTP头信息都会被转换为META键,将所有字符转换为大写,将连字符替换为下划线,并在名称前加上HTTP_前缀。例如,一个名为X-Bender的头信息会被映射到META键...
"react-range-slider"就是这样一个专门为React设计的库,它提供了一个功能丰富的滑块组件,使得在React应用中实现范围滑动选择变得更加简单。 这个库的亮点在于它支持非比例的滑动范围。这意味着滑块的值并不严格...
**Nginx-HTTP-Range 模块详解** 在 Web 开发中,为了优化资源的加载,特别是对于大文件如视频、音频或者大型图像的处理,HTTP 范围请求(HTTP Range Request)是一个非常重要的特性。它允许客户端(如浏览器)只...
Content-Range 头域用于指定实体头域的范围。例如,Content-Range:bytes 0-1023/1024 表示实体头域的范围是从 0 到 1023 字节。 Set-Cookie 头域用于指定服务器端的 Cookie 信息。例如,Set-Cookie:JSESSIONID=...
服务器接收到这样的请求后,会返回包含特定范围数据的响应,并且在响应头中包含`Content-Range`字段来标识实际发送的数据范围以及文件的总大小。例如: ``` 206 Content-Length: 106786028 Content-Range: bytes ...
16 Content-Range 20 17 Content-Type 21 18 Date 22 1没有时钟的源服务器运作 22 19 ETag 23 20 Expect 23 21 Expires 23 22 From 24 23 Host 24 24 If-Match 25 25 If-Modified-Since 26 26 If-None-Match 27 27 ...
Http头 Range、Content-Range() HTTP头中一般断点下载时才用到Range和Content-Range实体头, Range用户请求头中,指定第一个字节的位置和最后一个字节的位置,如(Range:200-300) Content-Range用于响应头
* Entity Header Fields:Allow、Content-Encoding、Content-Language、Content-Length、Content-Location、Content-MD5、Content-Range、Content-Type、Expires、Last-Modified、extension-header HTTP 报头字段是...
Http头 Range、Content-Range() HTTP头中一般断点下载时才用到Range和Content-Range实体头, Range用户请求头中,指定第一个字节的位置和最后一个字节的位置,如(Range:200-300) Content-Range用于响应头
如果服务器支持断点续传,它会返回一个206 Partial Content状态码,并在Content-Range头中提供完整的文件大小和实际返回的范围。例如,`Content-Range: bytes 0-999/10000`表示返回了文件的前1000个字节,总大小为...
如果客户端发送了带有`Range`字段的请求,服务器将返回一个206 Partial Content响应,并在响应头中包含一个`Content-Range`字段来指示数据的范围和文件的总长度。 例如: ``` HTTP/1.0 206 Partial Content ...
安装free-range-app-utils作为dev依赖项: npm install --save-dev free-range-app-utils 需要包装: var frau = require ( 'free-range-app-utils' ) ; 实用工具 本地应用解析器 用于在本地实例上托管和解析您的...
- **Content-Range**:在部分响应中,指示实体数据的范围。 5. **其他头标**: - **If-Match** 和 **If-None-Match**:用于条件请求,基于实体标签(ETags)判断资源是否已更新。 - **If-Modified-Since** 和 **...
- **Content-Range**:当返回部分实体时,指定返回范围。 以上便是HTTP头部的主要知识点介绍。理解这些头部字段不仅有助于优化HTTP请求和响应,还能帮助开发者更好地处理客户端和服务端之间的通信问题。
2. **响应头Content-Range**:服务器在返回206状态码时,会包含一个`Content-Range`响应头,指示所返回内容在完整文件中的范围,以及文件的总大小,如`Content-Range: bytes 100-200/1000`,表示返回的是第100到200...
本文将详细解析这些常见的HTTP头字段及其作用。 1. Accept:这个头字段指定了客户端能够接收的内容类型,如文本、HTML、JSON等。例如,`Accept: text/plain, text/html` 表示客户端可以接受纯文本和HTML格式的响应...