浏览器端缓存无请求
expire 在浏览器端验证expire是否大于当前时间,若大于则不发送http请求,直接cache返回,F5强刷会绕过
Expires: Sun, 10 Feb 2002 16:00:00 GMT
max-age 与expire功能类似,记录的是一个时间长度(秒)。Expires在HTTP/1.0生效,Cache-Control:max-age在HTTP/1.1生效。max-age支持的情况下,优先级高于expire,expire值不生效。
Cache-control: max-age=5
服务器端问询304
Last-Modified第一次请求页面会返回Last-Modified,第二次请求页面时头部带上If-Modified-Since,询问服务器是否返回304(且在Etag验证通过)。
第一次返回:Last-Modified: Fri, 12 May 2006 18:53:33 GMT
第二次发送头:
If-Modified-Since: Fri, 12 May 2006 18:53:33 GMT
Etag 原理类似Last-Modified。通过在服务器端比较Etag的值,判断是否返回304(且在Last-Modified不超时的前提)
ETag: "50b1c1d4f775c61:df3"
If-None-Match: W/"50b1c1d4f775c61:df3"