CORS는 서버 차단이 아니라 브라우저의 응답 공유 판단이다
서버는 응답을 보낼 수 있지만, 브라우저는 CORS 헤더를 확인해 자바스크립트가 응답을 읽어도 되는지 결정한다.
| 헤더 | 판단 내용 | 흔한 실수 |
|---|---|---|
| Access-Control-Allow-Origin | 어떤 Origin에게 응답을 공개할지 | credentials와 함께 * 사용 |
| Access-Control-Allow-Credentials | 쿠키/인증정보 포함 허용 여부 | SameSite, Secure 설정 누락 |
| Vary: Origin | Origin별 캐시 분리 | CDN이 다른 Origin 응답을 재사용 |
구분: CORS 오류는 서버가 요청을 처리하지 않았다는 뜻이 아니라, 브라우저가 응답 공개를 거부했다는 뜻인 경우가 많다.