Cors 설정
- 개념 : Cross-Origin Resource Sharing(교차되는 도메인의 자원을 공유한다)
- 왜? : 다른 도메인이 접근하는 것을 차단하기 위해 웹 브라우저 보안정책인 SOP(Same-Origin Policy, 동일 출처 정책)이 존재하는데, 프론트엔드(localhost:3000)에서 백엔드(localhost:8080)의 자원을 가져다 사용하기 위해
- 단계
- WebMvcConfigurer 상속 : addCorsMappings를 Override해 전역적으로 설정 가능
- CorsRegistry 매개변수 : Cors 설정을 등록하는 전용 객체
- 메서드
- addMapping : Cors 적용 경로 설정
- allowedOrigins : 허용할 도메인 목록
- allowedMethods : 허용할 HTTP 메서드 목록
- allowedHeaders : 허용할 요청 헤더
- allowCredentials : 쿠키/인증 헤더 허용
- JWT 토큰을 헤더에 포함할 때
- 쿠키 기반 인증 사용 시
- CSRF 토큰을 요청과 함께 보낼 때
package com.taekwandoback.config;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
@Configuration
public class CorsConfig implements WebMvcConfigurer {
@Override
public void addCorsMappings(CorsRegistry registry){
registry.addMapping("/**")
.allowedOrigins("http://localhost:3000")
.allowedMethods("GET", "POST", "DELETE", "POST", "PUT")
.allowedHeaders("*")
.allowCredentials(true);
}
}
'프로젝트' 카테고리의 다른 글
[1일차 / JAVA] Spring Security 설정 (0) | 2025.03.25 |
---|