小编典典

在JSP中添加Expires或Cache-Control标头

jsp

如何在JSP中添加ExpiresCache- Control标头?我想在包含页面中为我的静态组件(例如图像,CSS和JavaScript文件)添加一个过期日期。


阅读 429

收藏
2020-06-08

共1个答案

小编典典

要为JSP页面禁用浏览器缓存,请创建一个Filter,该映射到的url- pattern*.jsp,并且基本上在doFilter()方法中执行以下操作:

HttpServletResponse httpResponse = (HttpServletResponse) response;
httpResponse.setHeader("Cache-Control", "no-cache, no-store, must-revalidate"); // HTTP 1.1
httpResponse.setHeader("Pragma", "no-cache"); // HTTP 1.0
httpResponse.setDateHeader("Expires", 0); // Proxies.

这样,您无需将其复制粘贴到所有JSP页面上并用 scriptlet 使它们混乱。

为了使像CSS和JS静电元件浏览器缓存,把他们都在一个共同的文件夹一样/static/resources并创建一个Filter被映射上url- pattern/static/*/resources/*和做基本上在下面的doFilter()方法:

httpResponse.setDateHeader("Expires", System.currentTimeMillis() + 604800000L); // 1 week in future.

也可以看看:

2020-06-08