Springboot 웹 MVC CORS
Springboot 웹 MVC CORS
백기선님의 강의인 Springboot 개념과 활용 강의를 듣고 공부한 내용을 정리한 글
CORS란?
Cross-Origin Resource Sharing
의 약자로써
Single-Origin Policy를 우회하기 위한 기술이다.
Single-Origin Policy는 같은 Origin에만 요청을 보낼 수 있다는 정책이다.
Origin이란
- URI 스키마 (hhtp,https)
- hostname (harry.code, localhost 등)
- 포트 (8080, 18080)
위 세가지를 합친 것을 Origin이라고 한다.
즉 http://localhost:18080이라는 Origin이 http://localhost:8080에 있는 자원을 가져올 수 없다.
왜냐하면 Single-Origin Policy를 위반하기 때문이다.
이를 위해 Cross-Origin Resource Sharing
이 등장하게 된 것이고, Springboot에서는 간단하게 @CrossOrigin
애노테이션을 사용하여 극복 가능하다.
WebMvcConfigurer에서 addCorsMappings 메소드를 오버라이딩 해서 registry에 allowedOrigins에 CORS를 허용할 Origin을 넣어주면 CORS를 사용할 수 있다.
Reference
인프런 백기선님의 스프링 부트 개념과 활용