If-Modified-Since 是HTTP协议中的一个请求头部字段,它用于条件请求
▥前端
𝄐 0
If-Modified-Since 是HTTP协议中的一个请求头部字段,它用于条件请求。当浏览器向服务器发送请求时,包含了该字段并指定一个日期,如果该日期晚于资源的修改时间,则服务器会返回状态码为304 Not Modified的响应,告诉浏览器可以直接使用本地缓存的资源,从而减少不必要的网络传输和服务器负担。
具体而言,浏览器首先会将资源的最后修改时间通过 If-Modified-Since 请求头部字段发送给服务器,例如:
GET /example.html HTTP/1.1
Host: www.example.com
If-Modified-Since: Sat, 19 Sep 2020 20:00:00 GMT
如果该资源在这个日期之后有过修改,则服务器会返回资源的新版本,例如:
HTTP/1.1 200 OK
Content-Type: text/html; charset=UTF-8
Last-Modified: Sun, 01 Aug 2021 22:00:00 GMT
Content-Length: 1234
<!DOCTYPE html>
<html>
<head>
<title>Example</title>
</head>
<body>
<p>Hello, world!</p>
</body>
</html>
如果该资源在这个日期之前没有过修改,则服务器会返回 304 Not Modified 状态码,告诉浏览器直接使用本地缓存的资源,例如:
HTTP/1.1 304 Not Modified
Last-Modified: Sun, 01 Aug 2021 22:00:00 GMT
具体而言,浏览器首先会将资源的最后修改时间通过 If-Modified-Since 请求头部字段发送给服务器,例如:
GET /example.html HTTP/1.1
Host: www.example.com
If-Modified-Since: Sat, 19 Sep 2020 20:00:00 GMT
如果该资源在这个日期之后有过修改,则服务器会返回资源的新版本,例如:
HTTP/1.1 200 OK
Content-Type: text/html; charset=UTF-8
Last-Modified: Sun, 01 Aug 2021 22:00:00 GMT
Content-Length: 1234
<!DOCTYPE html>
<html>
<head>
<title>Example</title>
</head>
<body>
<p>Hello, world!</p>
</body>
</html>
如果该资源在这个日期之前没有过修改,则服务器会返回 304 Not Modified 状态码,告诉浏览器直接使用本地缓存的资源,例如:
HTTP/1.1 304 Not Modified
Last-Modified: Sun, 01 Aug 2021 22:00:00 GMT
本文地址:
/show-278266.html
版权声明:除非特别标注原创,其它均来自互联网,转载时请以链接形式注明文章出处。