在Firefox中停止缓存

时间:2011-03-20 13:25:16

标签: java jsp caching meta-tags

我正在使用以下代码。

<%
response.addHeader("Cache-Control","no-cache"); 
response.addHeader("Pragma","no-cache,no-store,private,must-revalidate,max-stale=0,post-check=0,pre-check=0 "); 
response.addDateHeader ("Expires", 0);
%>

它在IE中运行良好,但页面仍然在Firefox中缓存。我想在Firefox中停止缓存。有什么建议吗?

1 个答案:

答案 0 :(得分:10)

您会混淆Cache-ControlPragma标头。交换它们。 Firefox也需要no-store上的must-revalidateno-cache

response.addHeader("Cache-Control", "no-cache,no-store,private,must-revalidate,max-stale=0,post-check=0,pre-check=0"); 
response.addHeader("Pragma", "no-cache"); 
response.addDateHeader ("Expires", 0);

更重要的是,no-cache,no-store,must-revalidate只有Cache-Control足以让它在浏览器中运行。

另见:


与具体问题无关,我建议将这段代码放在Filter类中,并在*.jsp上映射,而不是在所有JSP文件上复制相同的代码。 d想要禁用浏览器缓存。