CORS는 웹페이지가 현재 페이지의 도메인과 다른 도메인의 리소스에 접근할 수 있도록 하는 메커니즘
이다.
웹 보안 정책인 동일 출처 정책
때문에, 웹 페이지는 기본적으로 다른 도메인의 서버에 있는 리소스를 직접적으로 요청할 수 없다
.
CORS는 HTTP 헤더를 사용
하여 웹 페이지가 다른 도메인의 서버
와 안전하게 통신
할 수 있도록 해준다.
서버는 특정 출처에서의 요청을 허용하거나 거부할 수 있고 어떤 종류의 리소스가 공유될 수 있는지를 정의할 수 있다.
브라우저는 실제 요청을 보내기 전에 "OPTIONS" 메서드를 사용하여 사전 요청
을 보낸다.
이 요청은 서버에 이 특정 요청이 허용되는지 확인한다.
서버는 "Access-Control-Allow-Origin" 헤더를 포함하여 응답
을 보낸다.
이 헤더는 요청을 보낸 출처가 리소스에 접근할 수 있는지 여부를 브라우저에 알려준다.
만약 요청한 출처가 허용된 목록에 있다면 브라우저는 실제 요청을 보내고 리소스에 접근할 수 있다.
CORS를 사용하면 개발자는 다음과 같은 세밀한 제어를 할 수 있다.