From 17ebba7b851283f5748726b9507220f7daecd81c Mon Sep 17 00:00:00 2001 From: cuijiawang Date: Tue, 5 Aug 2025 16:12:09 +0800 Subject: [PATCH] cors --- pom.xml | 4 ++ .../example/{demo => }/DemoApplication.java | 2 +- .../java/com/example/config/CorsConfig.java | 46 +++++++++++++++++++ 3 files changed, 51 insertions(+), 1 deletion(-) rename src/main/java/com/example/{demo => }/DemoApplication.java (94%) create mode 100644 src/main/java/com/example/config/CorsConfig.java diff --git a/pom.xml b/pom.xml index 39a1b35..0fa3bbb 100644 --- a/pom.xml +++ b/pom.xml @@ -21,6 +21,10 @@ org.springframework.boot spring-boot-starter + + org.springframework.boot + spring-boot-starter-web + com.jujia jujia-common-config diff --git a/src/main/java/com/example/demo/DemoApplication.java b/src/main/java/com/example/DemoApplication.java similarity index 94% rename from src/main/java/com/example/demo/DemoApplication.java rename to src/main/java/com/example/DemoApplication.java index fb4d512..369dcb8 100644 --- a/src/main/java/com/example/demo/DemoApplication.java +++ b/src/main/java/com/example/DemoApplication.java @@ -1,4 +1,4 @@ -package com.example.demo; +package com.example; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; diff --git a/src/main/java/com/example/config/CorsConfig.java b/src/main/java/com/example/config/CorsConfig.java new file mode 100644 index 0000000..b0354fb --- /dev/null +++ b/src/main/java/com/example/config/CorsConfig.java @@ -0,0 +1,46 @@ +package com.example.config; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.stereotype.Component; +import org.springframework.web.cors.CorsConfiguration; +import org.springframework.web.cors.UrlBasedCorsConfigurationSource; +import org.springframework.web.filter.CorsFilter; + +import javax.servlet.*; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; + +/** + * @Author cuiJiaWang + * @Create 2025-08-05 16:06 + */ +@Configuration +public class CorsConfig { + @Component + public class CorsFilter implements Filter { + + @Override + public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) + throws IOException, ServletException { + + HttpServletResponse response = (HttpServletResponse) res; + HttpServletRequest request = (HttpServletRequest) req; + + response.setHeader("Access-Control-Allow-Origin", "*"); + response.setHeader("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE, OPTIONS"); + response.setHeader("Access-Control-Max-Age", "3600"); + response.setHeader("Access-Control-Allow-Headers", "*"); + response.setHeader("Access-Control-Allow-Credentials", "false"); + + if ("OPTIONS".equalsIgnoreCase(request.getMethod())) { + response.setStatus(HttpServletResponse.SC_OK); + } else { + chain.doFilter(req, res); + } + } + } + + +}