feat(系统设置): 是否启用浏览器缓存改为可配置

This commit is contained in:
wangjiahao 2024-03-25 13:57:23 +08:00
parent f640990c30
commit 2fdad1dc35

View File

@ -3,6 +3,7 @@ package io.dataease.filter;
import jakarta.servlet.*;
import jakarta.servlet.FilterConfig;
import jakarta.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.core.Ordered;
import org.springframework.http.HttpHeaders;
import org.springframework.stereotype.Component;
@ -12,6 +13,9 @@ import java.io.IOException;
@Component
public class HtmlResourceFilter implements Filter, Ordered {
@Value("${dataease.http.cache:true}")
private Boolean httpCache;
@Override
public int getOrder() {
return 99;
@ -24,11 +28,13 @@ public class HtmlResourceFilter implements Filter, Ordered {
@Override
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
HttpServletResponse httpResponse = (HttpServletResponse) servletResponse;
// 禁用缓存
httpResponse.setHeader(HttpHeaders.CACHE_CONTROL, "no-cache");
httpResponse.setHeader("Cache", "no-cache");
httpResponse.setHeader(HttpHeaders.PRAGMA, "no-cache");
httpResponse.setHeader(HttpHeaders.EXPIRES, "0");
if(httpCache!=null && httpCache){
// 禁用缓存
httpResponse.setHeader(HttpHeaders.CACHE_CONTROL, "no-cache");
httpResponse.setHeader("Cache", "no-cache");
httpResponse.setHeader(HttpHeaders.PRAGMA, "no-cache");
httpResponse.setHeader(HttpHeaders.EXPIRES, "0");
}
// 继续执行过滤器链
filterChain.doFilter(servletRequest, httpResponse);
}