HTTP API를 개발하다 보면, 서버는 정상적으로 응답을 보내는데 브라우저에서만 요청이 실패하는 상황을 자주 마주한다.콘솔에는 보통 다음과 같은 메시지가 나타난다. Blocked by CORS policy 이 문제는 HTTP 서버의 오류도, 네트워크 장애도 아니다.이 글에서는 CORS가 무엇인지, 왜 HTTP 문제가 아닌지, 그리고 왜 브라우저에서만 발생하는지를 웹 표준 관점에서 정리한다.1. Same-Origin Policy란 무엇인가?CORS를 이해하려면 먼저 Same-Origin Policy를 이해해야 한다.Same-Origin Policy는 브라우저가 기본적으로 적용하는 보안 정책이다.여기서 Origin은 다음 세 요소의 조합으로 정의된다.프로토콜 (http / https)호스트 (도메인)포트이..