<code>Etag</code>由服务器端生成,客户端通过<code>If-Match</code>或者说<code>If-None-Match</code>这个条件判断请求来验证资源是否修改。常见的是使用<code>If-None-Match</code>。请求一个文件的流程可能如下:
====第一次请求===
====第二次请求===
答案是同时使用,也就是说在完全匹配<code>If-Modified-Since</code>和<code>If-None-Match</code>即检查完修改时间和<code>Etag</code>之后,
服务器才能返回304.(不要陷入到底使用谁的问题怪圈)
为什么使用Etag请求头?
Etag 主要为了解决 <code>Last-Modified</code> 无法解决的一些问题。
本文转自 全栈web笔记 51CTO博客,原文链接:http://blog.51cto.com/12864747/1969051,如需转载请自行联系原作者