缓存判断流程:
- 如果
Cache-Control
(或者Expires
,Expires
绝对时间,优先级比Cache-Control
低)未过期,那么使用缓存,否则按照下一条来判断。 - 如果有
Etag
,则会向服务器发送Etag
和If-None-Match
,由浏览器来判断是200
还是304
。如果没有Etag
那么按照下一条来判断。 - 浏览器判断上次文件响应头中是否有
Last-Modified
信息,有则连同If-Modified-Since
一起发送到服务器,由服务器来判断200
还是304
。 - 如果以上都没有使用,那么浏览器请求一次服务器,返回
200
。