If-Range 标头
HTTP If-Range
请求标头使范围请求有条件。如果条件满足,则发出范围请求,服务器会返回一个 206 Partial Content
响应,其中包含资源的一部分(或多部分)。如果条件不满足,则返回完整的资源,状态为 200 OK
。
此标头可以与 Last-Modified
验证器一起使用,也可以与 ETag
一起使用,但不能同时使用两者。
最常见的用例是恢复下载,同时确保自客户端收到最后一部分以来服务器上的资源未被修改。
语法
http
If-Range: <day-name>, <day> <month> <year> <hour>:<minute>:<second> GMT
If-Range: <etag>
指令
<etag>
-
唯一标识所请求资源的实体标签。它是由双引号括起来的 ASCII 字符字符串(例如
"675af34563dc-tr34"
)。弱实体标签(带有W/
前缀的标签)不得在此标头中使用。 <day-name>
-
Mon
,Tue
,Wed
,Thu
,Fri
,Sat
或Sun
之一(区分大小写)。 <day>
-
2 位数字的日期,例如 "04" 或 "23"。必填。
<month>
-
Jan
,Feb
,Mar
,Apr
,May
,Jun
,Jul
,Aug
,Sep
,Oct
,Nov
,Dec
之一(区分大小写)。 <year>
-
4 位数字的年份,例如 "1990" 或 "2016"。
<hour>
-
2 位数字的小时,例如 "09" 或 "23"。
<minute>
-
2 位数字的分钟,例如 "04" 或 "59"。
<second>
-
2 位数字的秒,例如 "04" 或 "59"。
- GMT
-
格林威治标准时间。HTTP 日期始终以 GMT 表示,从不以本地时间表示。
示例
http
If-Range: Wed, 21 Oct 2015 07:28:00 GMT
If-Range: "67ab43"
规范
规范 |
---|
HTTP 语义 # field.if-range |
浏览器兼容性
加载中…