Content-Range 头

Baseline 已广泛支持

此特性已相当成熟,可在许多设备和浏览器版本上使用。自 ⁨2015 年 7 月⁩以来,各浏览器均已提供此特性。

HTTP Content-Range 响应头用于范围请求中,指示响应体内容在完整资源中的位置。

它只应包含在 206 Partial Content416 Range Not Satisfiable 响应中。

头类型 响应头, 内容头
禁止请求头
CORS 安全列表请求头

语法

http
Content-Range: <unit> <range>/<size>
Content-Range: <unit> <range>/*
Content-Range: <unit> */<size>

指令

<unit>

指定范围的单位。目前仅支持 bytes

<range>

范围格式为 <range-start>-<range-end>,其中 <range-start><range-end> 分别是给定 <unit> 中范围的起始和结束位置(从零开始且包含在内)的整数。416 Range Not Satisfiable 响应中使用 * 表示该值不是一个范围。

<size>

文档的总长度(如果未知,则为 *)。

示例

部分内容响应

206 Partial Content 响应显示了一个部分响应,Content-Range 指示它包含一个 146515 字节文件的前 1024 字节。

http
HTTP/2 206
content-type: image/jpeg
content-length: 1024
content-range: bytes 0-1023/146515
…

(binary content)

范围无法满足

如果服务器无法满足请求的范围请求,它应该返回 416 Range Not Satisfiable 状态,并且 Content-Range 应该为范围指定 *,以及资源的总大小。

http
HTTP/2 416

Content-Range: bytes */67589

规范

规范
HTTP 语义
# field.content-range

浏览器兼容性

另见