refactor(系统设置): 增加使用http缓存配置

This commit is contained in:
wangjiahao 2024-03-27 15:30:25 +08:00
parent bd109779d8
commit 6d79bd52bd

View File

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