# CORS와 교차 출처 요청

[원문](https://www.linkymeadow.com/w/0d27a3/)

마지막 수정: 2026-10-05 20:20 (KST)

교차 출처 리소스 공유(CORS, Cross-Origin Resource Sharing)는 서버의 HTTP 응답 헤더를 바탕으로 브라우저가 다른 출처의 응답을 웹 스크립트에 공유할지 판단하는 메커니즘입니다. 출처(origin)는 URL의 스킴·호스트·포트로 구분하므로, 같은 도메인 계열이어도 호스트나 포트가 다르면 다른 출처일 수 있습니다.

CORS 오류가 표시되어도 프리플라이트가 필요 없는 요청은 이미 서버에 전달됐을 수 있습니다. 서버의 인증·인가와 CSRF 방어를 별도로 설계해야 하며, CORS 설정만으로 외부 프로그램의 API 호출을 차단할 수는 없습니다.

## 기본 개념과 출처 구분

- [교차 출처 리소스 공유 (CORS) — MDN](https://developer.mozilla.org/ko/docs/Web/HTTP/Guides/CORS) · 한국어

  단순 요청과 프리플라이트, 요청·응답 헤더와 쿠키를 포함한 교차 출처 요청의 흐름을 설명합니다.
- [동일 출처 정책 — MDN](https://developer.mozilla.org/ko/docs/Web/Security/Defenses/Same-origin_policy) · 한국어

  브라우저가 출처를 비교하는 기준과 교차 출처의 읽기·쓰기·삽입에 적용하는 제한을 설명합니다.
- [Site — MDN](https://developer.mozilla.org/en-US/docs/Glossary/Site) · 영문

  CORS의 origin과 쿠키의 SameSite에서 사용하는 site의 차이를 등록 가능 도메인·스킴·포트의 예로 설명합니다.

## 프리플라이트와 응답 헤더

- [Preflight request — MDN](https://developer.mozilla.org/en-US/docs/Glossary/Preflight_request) · 영문

  브라우저가 필요한 경우 OPTIONS 사전 요청으로 사용할 메서드·헤더의 허용 여부를 확인한 뒤 실제 요청을 보내는 과정을 설명합니다.
- [Access-Control-Allow-Origin header — MDN](https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Headers/Access-Control-Allow-Origin) · 영문

  허용할 출처 지정, 인증 정보를 포함한 요청에서의 와일드카드 제한과 출처별 응답 캐시를 위한 Vary: Origin을 설명합니다.
- [Access-Control-Allow-Credentials header — MDN](https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Headers/Access-Control-Allow-Credentials) · 영문

  쿠키 등 인증 정보를 포함한 요청에서 클라이언트의 credentials 설정과 서버의 응답 허용 헤더가 맡는 역할을 설명합니다.

## 설정과 오류 확인

- [CORS errors — MDN](https://developer.mozilla.org/en-US/docs/Web/HTTP/Guides/CORS/Errors) · 영문

  개발자 도구에서 CORS 오류 원인을 확인하고 누락된 헤더·출처 불일치·프리플라이트 실패 등을 구분하는 방법을 안내합니다.
- [cors middleware — Express](https://expressjs.com/en/resources/middleware/cors/) · 영문

  경로별·출처별 CORS 응답 설정과 프리플라이트 처리 방법을 보여주며, CORS가 서버의 접근 제어를 대신하지 않는다는 점을 설명합니다.
- [Fetch Standard의 CORS protocol — WHATWG](https://fetch.spec.whatwg.org/#http-cors-protocol) · 영문

  CORS 프로토콜의 요청·응답 헤더, 인증 정보와 공유 여부 판정에 관한 표준을 확인할 수 있습니다.

## 연관 문서

- [CSRF(XSRF)와 요청 위조 방어](https://www.linkymeadow.com/w/8841e9/)
- [웹·브라우저 보안](https://www.linkymeadow.com/w/ff79f4/)
- [API 보안](https://www.linkymeadow.com/w/63f1cf/)
- [인증·인가와 권한 관리](https://www.linkymeadow.com/w/f6c93c/)
