CORS(Cross-Origin Resource Sharing)는 웹 애플리케이션에서 다른 도메인(Origin)으로부터 리소스에 접근할 수 있는 권한을 부여하는 메커니즘입니다. 브라우저는 보안 상의 이유로 동일 출처 정책(Same-Origin Policy)에 따라 다른 도메인으로의 AJAX 요청을 제한합니다. 하지만 CORS를 사용하면 웹 애플리케이션은 다른 도메인으로부터 리소스를 요청하고 응답을 받을 수 있습니다.

예를 들어, 도메인 A에서 호스팅되는 웹 애플리케이션이 도메인 B의 API에 접근해야 한다고 가정해봅시다. 동일 출처 정책에 따라 웹 브라우저는 도메인 A에서 도메인 B로의 AJAX 요청을 차단합니다. 이때, 도메인 B의 서버는 CORS 정책을 설정하여 도메인 A로부터의 요청을 허용할 수 있습니다.(요청 받는 쪽에서 설정)

CORS를 사용하기 위해서는 다음과 같은 단계를 거칩니다:

  1. 서버 측 설정: 도메인 B의 서버는 응답 헤더에 Access-Control-Allow-Origin을 포함하여 허용할 도메인을 지정합니다. 이를 통해 도메인 A로부터의 요청을 허용합니다.
  2. 클라이언트 측 설정: 도메인 A의 웹 애플리케이션은 요청 헤더에 Origin을 포함하여 요청이 시작된 도메인을 전송합니다. 이를 통해 서버가 요청을 허용할지 결정할 수 있습니다.
  3. 프리플라이트 요청: 일부 요청은 사전 요청(preflight request)을 통해 서버의 허용 여부를 확인해야 합니다. 이는 OPTIONS 메서드를 사용하여 서버에 사전 요청을 보내고, 서버는 이에 대한 응답을 제공합니다.

CORS를 사용하면 웹 애플리케이션은 다른 도메인으로부터 리소스를 요청하고 응답을 받을 수 있습니다. 이를 통해 웹 애플리케이션은 다른 도메인의 API를 사용하거나, 외부 도메인에서 호스팅되는 리소스를 로드할 수 있습니다. CORS는 웹 애플리케이션의 기능과 유연성을 향상시키는 데 도움이 되는 중요한 보안 메커니즘입니다.

  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기