我遇到了Firefox存储缓存的问题,即使我明确声明不这样做。我的代码中包含.jsp,.html和template.html
<head>
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate, max-age=0" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="expires" content="0" />
<meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00 GMT" />
</head>
虽然它似乎有所作为,因为我可以离开页面,并且(有时)它会将我带到我的登录页面,退出并返回产生错误。 [RPC Fault faultString =“授权可以继续之前需要登录。” 但是它会带我到我的主页显然登录,但没有任何数据。
我不明白这一点,因为它在IE中工作正常,而且这也是https,所以我不明白为什么任何缓存都会被存储。请帮忙!
此外,我不能要求用户禁用浏览器历史记录,即使这似乎“修复”了这个问题。
我尝试了以下更改HTTP标头,但我不确定这是否是正确的方法,因为它没有“工作”。我把它放在我的.jsp的顶部。
<%
response.setHeader("Cache-Control", "no-cache, no-store, must-revalidate"); // HTTP 1.1.
response.setHeader("Pragma", "no-cache"); // HTTP 1.0.
response.setDateHeader("Expires", 0); // Proxies.
%>