풀스택 개발 공부로그

CORS

|

CORS

CORS 란? · juicylog HTTP요청은 기본적으로 Cross-site http requests가 가능하다. 하지만 자바스크립트(XMLHttpRequests)로 다른 웹페이지에 접근할 때는 Same Origin Policy로 인해 요청이 불가능하다.

즉, 자바스크립트 내에서 발생하는 요청은 프로토콜, 호스트, 포트가 같아야 요청이 가능하다. 같은 서버에 있는 주소로만 ajax요청이 가능하다.

하지만 외부 호출이 잦은 서비스가 많이 생기면서 오히려 불편한 정책이 되었다. 그래서 웹 브라우저에서 외부 도메인 서버와 통신하기 위한 방식을 표준화한 스펙이 CORS이다. 서버와 클라이언트가 헤더의 규칙으로 요청이나 응답을 어떻게 반응할지 결정하는 스펙이다.

참고

XML HttpRequest는 HTTP를 통해 쉽게 데이터를 주고받는 오브젝트를 제공한다. Ajax로 실행되는 HTTP통신도 XML HttpRequest 규격을 이용한다.

Ajax Asynchronous JavaScript and XML 원래 의미는 비동기적으로 Javascript와 XML을 이용하여 정보를 교환하는 방식 하지만 꼭 XML이 아니라도 json, yaml, text 등 모든 형태의 정보를 포함

HTTP CORS(Cross Origin Resource Sharing)란? - armadillo’s blog CORS는 다음과 같은 4개의 타입으로 구분된다. 브라우저가 요청 내용을 분석한 뒤 한가지 방식을 선택해 서버에 요청하기 때문에 개발자는 목적에 맞는 방식을 선택하고 조건에 맞춰 코딩해야 한다.