跨域拦截提醒日志添加

This commit is contained in:
zer0Black
2023-06-30 14:40:19 +08:00
parent 19108538d9
commit 32d54a7436
2 changed files with 32 additions and 0 deletions
@@ -1,13 +1,18 @@
package com.jero.config;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
import javax.servlet.*;
import com.alibaba.druid.support.http.StatViewServlet;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.autoconfigure.AutoConfigureAfter;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.boot.autoconfigure.condition.ConditionalOnWebApplication;
import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.boot.web.servlet.ServletRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@@ -32,6 +37,12 @@ public class DruidConfig {
*/
private static final String NEW_JS = "//this.buildFooter();";
@Value("${spring.datasource.druid.stat-view-servlet.loginUsername}")
private String loginUsername;
@Value("${spring.datasource.druid.stat-view-servlet.loginPassword}")
private String loginPassword;
/**
* 去除Druid监控页面的广告
*
@@ -80,4 +91,22 @@ public class DruidConfig {
response.getWriter().write(newJs);
}
}
/**
* druid监控页面访问账号密码配置
* @return {@link FilterRegistrationBean}
*/
@Bean
@ConditionalOnWebApplication
@ConditionalOnProperty(name = "spring.datasource.druid.stat-view-servlet.enabled", havingValue = "true")
public ServletRegistrationBean statViewServlet() {
final ServletRegistrationBean<StatViewServlet> servletRegistrationBean = new ServletRegistrationBean<>(new StatViewServlet(), "/druid/*");
// 配置druid参数
Map<String, String> initParams = new HashMap<>(16);
// 配置监控页面访问用户密码
initParams.put("loginUsername", this.loginUsername);
initParams.put("loginPassword", this.loginPassword);
servletRegistrationBean.setInitParameters(initParams);
return servletRegistrationBean;
}
}
@@ -1,6 +1,7 @@
package com.jero.config.filter.cors;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.ArrayUtils;
import javax.servlet.*;
@@ -15,6 +16,7 @@ import java.util.Objects;
* @author hzwl
* 设置响应信息
*/
@Slf4j
@WebFilter(urlPatterns = {"/verifyCode/**"})
public class CorsFilter implements Filter {
@@ -42,6 +44,7 @@ public class CorsFilter implements Filter {
//请求头与系统的origin不同则咔嚓
String[] split = originIp.split(",");
if (Objects.nonNull(origin) && !ArrayUtils.contains(split,origin)){
log.error("{}不在跨域白名单中,请在配置文件的 originIp 配置中添加", origin);
return;
}
//获取请求路径