본문 바로가기

Web

[Spring] CORS 설정으로 오류 해결

728x90

 

 

Access to XMLHttpRequest at 'http://localhost:8080/login' (redirected from 'http://localhost:3000/login/welcome') from origin 'http://localhost:3000' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.

 

이런 오류가 발생해서 프론트->서버로 데이터 전달이 불가능했다.

 

여러 해결책을 찾아봤는데 프록시 설정은 이미 되어 있었고, 저 CORS 정책에 대해 해결할 수 밖에 없었다...

 

이전에 Security에 대한 설정은 전혀 건드리지 않았는데, 아마 JWT를 위해 security 관련 의존성을 추가한게 문제였을지도 모르겠다...

 

먼저 코드는

이 블로그를 그대로 따라했고, 해결되었다. 저 링크 포트에 내 프론트 서버를 작성해주면 된다.

@Configuration
public class WebConfig implements WebMvcConfigurer {
    @Override
    public void addCorsMappings(final CorsRegistry registry) {
        registry.addMapping("/**")
                .allowedOrigins("http://localhost:3000")
    }
}

 

CORS란 Cross-Origin Resource Sharing으로 클라이언트가 서버에 데이터를 전송하기 전, 인가된 사용자인지 검증을 받은 후 서버와 커뮤니케이션이 가능한 시스템이다.

 

 

 

 


출처

[Spring] CORS 설정하기

 

[Spring] CORS 설정하기

서론 저는 지금 간단한 토이 프로젝트를 하나 진행중인데요.

learnote-dev.com