我知道有一个HTTP响应头指令禁用页面缓存:
Cache-Control:no-cache
我可以修改由“手”的标题:
<%response.addHeader("Cache-Control","no-cache");%>
但有一个“好”的方式,使JSP解释返回服务器响应这个标题行?
(我查了<%@页...%>指令,似乎没有什么这样。)
我知道有一个HTTP响应头指令禁用页面缓存:
Cache-Control:no-cache
我可以修改由“手”的标题:
<%response.addHeader("Cache-Control","no-cache");%>
但有一个“好”的方式,使JSP解释返回服务器响应这个标题行?
(我查了<%@页...%>指令,似乎没有什么这样。)
另外补充
response.addHeader("Expires","-1"); response.addHeader("Pragma","no-cache");
你的头并给予了一枪。
如果你使用的是servlet,那么我相信你的问题发布将是正确的做法。 我不知道的任何方式,在JSP做到这一点。
<?xml version="1.0"?>
<jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.0">
<jsp:scriptlet><![CDATA[
response.setHeader("Cache-Control", "no-cache");
]]></jsp:scriptlet>
</jsp:root>
必须将响应标头内<jsp:root />
另外,我反而会建议它从你的servlet而不是JSP页面发送此。
IIRC一些浏览器可能会忽略在某些情况下缓存控制设置。 这样做的“安全”的解决方法是总是以新的查询字符串变量得到一个网页(即使是AJAX块)(如时间)。