是否有办法在Web服务器级别(web.xml)为所有事务设置标头?具体来说,我想这样做:
response.setHeader("Cache-Control", "no-cache, no-store");
response.setDateHeader("Expires", -1);
在应用程序级别。我似乎记得可以在Web.xml中设置标头。还有其他解决方案吗?
答案 0 :(得分:8)
实施javax.servlet.Filter
,在doFilter()
方法中编写适当的逻辑,最后将其映射到web.xml
url-pattern
/*
上。
顺便说一句,在所有已知浏览器和代理中都有效的“魔术”集是:
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.