If-Modified-Since

If-Modified-Since 请求 HTTP 头部使请求变为条件请求:服务器仅在请求的资源最后修改时间晚于给定日期时才返回该资源,并使用 200 状态码。如果资源自上次修改后未被修改,则响应为 304,不包含任何内容;先前请求的 Last-Modified 响应头包含上次修改的日期。与 If-Unmodified-Since 不同,If-Modified-Since 只能与 GETHEAD 结合使用。

当与 If-None-Match 结合使用时,除非服务器不支持 If-None-Match,否则将被忽略。

最常见的用例是更新没有关联的缓存实体 ETag.

头类型 请求头
禁止的头名称

语法

http
If-Modified-Since: <day-name>, <day> <month> <year> <hour>:<minute>:<second> GMT

指令

<day-name>

“Mon”、“Tue”、“Wed”、“Thu”、“Fri”、“Sat” 或 “Sun” 之一(区分大小写)。

<day>

两位数的日期,例如“04”或“23”。

<month>

“Jan”、“Feb”、“Mar”、“Apr”、“May”、“Jun”、“Jul”、“Aug”、“Sep”、“Oct”、“Nov”、“Dec” 之一(区分大小写)。

<year>

四位数的年份,例如“1990”或“2016”。

<hour>

两位数的小时,例如“09”或“23”。

<minute>

两位数的分钟,例如“04”或“59”。

<second>

两位数的秒数,例如“04”或“59”。

GMT

格林威治标准时间。HTTP 日期始终以 GMT 表示,而不是当地时间。

示例

http
If-Modified-Since: Wed, 21 Oct 2015 07:28:00 GMT

规范

规范
HTTP 语义
# field.if-modified-since

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。

另请参见