CORS( Cross-Origin Resource Sharing )

교차 출처(다른 출처) 리소스 공유라는 의미이다.

https://domain-a.com 에서 프론트 엔드 JS 코드가 XMLHttpRequest(XHR - 서버와 상호작용하기 위한 객체)를 사용해서 https://domain-b.com/data.json를 요청하는 경우, 보안상의 이유로 브라우저는 교차출처 HTTP 요청을 제한한다.

⇒ 자신과 동일한 출처 리소스만 불러올 수 있으며, 다른 출처 리소스를 불어오기 위해서는 CORS 헤더를 포함한 응답을 반환해야 한다.

Untitled

출처 (Origin)은 무엇인가?

서버의 위치를 의미하는 도메인 주소들은 여러 구성 요소로 이루어져있다.

여기서 출처는 Protocol과 Host 그리고 포트 번호까지 모두 합친 것을 의미한다.

→ 서버의 위치를 찾아가기 위한 기본적인 집단이다.

(각 웹에서 사용하는 HTTPHTTPS 프로토콜의 기본 포트 번호가 정해져있어서 포트 번호는 생략 가능)

브라우저의 개발자 도구의 콘솔에서 Location 객체가 가지고 있는 origin 프로퍼티에 접근하면 출처를 알아낼 수도 있다.

console.log(location.origin);