HTTP
를 활용해서, 한 출처(동일 URL)에서 실행중인Web App
이 다른 출처(다른 URL)에서 선택한 리소스에 접근 할 수 있는 권한을 부여하도록 브라우저에 알려주는것
https://domain-a.com
의JavaScript
코드가https://domain-a.com/data.json
을 요청하는 경우보안 상의 이유로인해 브라우저에서 HTTP 요청을 제한시킨다
XMLHttpRequest
, Fetch()
호출등등WebGL
drawImage()
를 사용해 Canvas
에 그린 이미지나 프레임CSS Shapes
https://foo.example
의 컨텐츠가
https://bar.other
를 호출하기 원하면
const xhr = new XMLHttpRequest();
const url = 'https://bar.other/resources/public-data/';
xhr.open('GET', url);
xhr.onreadystatechange = someHandler;
xhr.send();
위의 경우 브라우저에서 서버의 응답을 확인하게 되는데
Origin: https://foo.example
에서 요청이 왔다는것을 확인이 가능하다.
서버는 이에대한
Response
로
Access-Control-Allow-Origin
를 전송한다.
Node나 Nest를 공부할땐 별로 신경쓰지 않는 에러지만 나중에 프론트로 연결할때 정말 예측하지 못한것에서 수도없이 나는 에러.. 짤때는 생각이 안나지만 에러가나면 막상 아 맞다 하고 생각나는 에러라서 정리해봤다
참고한곳
CORS - Mozilla