From 7ba3796ea2f5ed41b0e5d6b137dcb8926296b8a1 Mon Sep 17 00:00:00 2001 From: MinhoJJang Date: Sat, 4 May 2024 03:00:07 +0900 Subject: [PATCH] =?UTF-8?q?refactor:=20CorsConfig=20=EC=84=A4=EC=A0=95=20?= =?UTF-8?q?=EB=B3=80=EA=B2=BD=20-=20=EA=B8=B0=EC=A1=B4=20WebMvcConfigurer?= =?UTF-8?q?=20=EB=B0=A9=EC=8B=9D=EC=97=90=EC=84=9C=20CorsConfigurationSour?= =?UTF-8?q?ce=20=EB=A1=9C=20=EB=B3=80=EA=B2=BD=ED=95=A9=EB=8B=88=EB=8B=A4.?= =?UTF-8?q?=20-=20http://192.168.0.*=20=EC=97=90=EC=84=9C=20=EC=98=A4?= =?UTF-8?q?=EB=8A=94=20=EC=9A=94=EC=B2=AD=EC=97=90=20=EB=8C=80=ED=95=B4=20?= =?UTF-8?q?=EB=AA=A8=EB=91=90=20=ED=97=88=EC=9A=A9=ED=95=A9=EB=8B=88?= =?UTF-8?q?=EB=8B=A4.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../reinput/global/security/CorsConfig.java | 32 ++++++++++--------- 1 file changed, 17 insertions(+), 15 deletions(-) diff --git a/src/main/java/goorm/reinput/global/security/CorsConfig.java b/src/main/java/goorm/reinput/global/security/CorsConfig.java index d81e744..262615e 100644 --- a/src/main/java/goorm/reinput/global/security/CorsConfig.java +++ b/src/main/java/goorm/reinput/global/security/CorsConfig.java @@ -1,24 +1,26 @@ package goorm.reinput.global.security; +import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -import org.springframework.web.servlet.config.annotation.CorsRegistry; -import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; +import org.springframework.web.cors.CorsConfiguration; +import org.springframework.web.cors.CorsConfigurationSource; +import org.springframework.web.cors.UrlBasedCorsConfigurationSource; +import org.springframework.web.util.pattern.PathPatternParser; +import java.util.Arrays; @Configuration -public class CorsConfig implements WebMvcConfigurer { +public class CorsConfig { - // TODO: cors 설정. dev, prod 주소 추가 예정 -// @Value("${cors.origin.development}") -// private String developmentOrigin; -// -// @Value("${cors.origin.production}") -// private String productionOrigin; + @Bean + public CorsConfigurationSource corsConfigurationSource() { + CorsConfiguration config = new CorsConfiguration(); + config.setAllowedOriginPatterns(Arrays.asList("http://192.168.0.*")); + config.setAllowedMethods(Arrays.asList("GET", "POST", "PUT", "PATCH", "DELETE", "OPTIONS", "HEAD")); + config.setAllowedHeaders(Arrays.asList("Authorization", "Cache-Control", "Content-Type")); + config.setAllowCredentials(true); - @Override - public void addCorsMappings(CorsRegistry registry) { - registry.addMapping("/**") - .allowedMethods("OPTIONS", "HEAD", "GET", "POST", "PUT", "PATCH", "DELETE") - .allowCredentials(true) - .allowedOrigins("http://localhost:3000","https://2024-beotkkotthon-team-24-fe.vercel.app", "https://reinput.info", "https://www.reinput.info"); + UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource(new PathPatternParser()); + source.registerCorsConfiguration("/**", config); + return source; } } \ No newline at end of file