【发布时间】:2011-05-04 09:35:47
【问题描述】:
我正在发送格式有效的 HTTP 响应“过期”标头(例如“Wed,2011 年 5 月 4 日 09:29:09 GMT”),页面通过 https://[host]:{port}/(带有 [ host] 是本地主机)来自 J2EE 应用程序,使用 response.setDateHeader("Expires", {milliseconds a few seconds in the future} )。
在我的页面上,我有一个指向同一页面的链接。当我在 Firefox (4) 或 IE (8) 中单击此链接时,页面将从缓存中重新加载,直到达到过期时间。过期时间过后,单击同一链接会导致页面从服务器加载新数据。如果我在上述任一浏览器上按 F5,页面会重新加载来自服务器的新数据(Firebug 显示 Cache-Control: max-age=0 正在与请求一起发送)。
使用谷歌浏览器,F5 和点击链接都具有相同的效果。该页面总是从服务器重新加载新数据。
我找不到任何有据可查的关于这种效果的解释。
有谁知道为什么在我的情况下,谷歌浏览器不尊重服务器与页面响应一起发送的“过期”标头,因此总是从服务器请求数据?
【问题讨论】:
标签: google-chrome jakarta-ee http-headers browser-cache