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