CORS preflight 판정기 사용법
메서드를 고르고 Content-Type 과 직접 설정한 헤더 이름을 넣으면 본 요청 앞에 OPTIONS 선행 요청이 붙는지 판정합니다. 헤더는 한 줄에 하나씩 또는 쉼표로 이어 씁니다. 표에는 헤더별 safelist 여부가, 그 밑에는 교환되는 헤더 예시가 나옵니다.
판정 기준과 근거
WHATWG Fetch 규격의 CORS-safelisted 정의를 적용했습니다(2026년 10월 확인). 메서드가 GET·HEAD·POST 이고, 직접 설정한 헤더가 Accept·Accept-Language·Content-Language·Content-Type·Range 뿐이며, Content-Type 이 application/x-www-form-urlencoded·multipart/form-data·text/plain 중 하나일 때만 선행 요청이 생략됩니다.
한계와 주의사항
입력한 조건만으로 판정하며 실제 요청을 보내지 않습니다. Range 처럼 값 제약이 있는 헤더는 이름만 봅니다. 쿠키 전송이나 Access-Control-Max-Age 는 다루지 않습니다.
자주 묻는 질문
세 조건 중 하나가 깨졌을 때 생깁니다. 가장 흔한 것은 Authorization 추가이고, 그다음이 Content-Type 을 application/json 으로 바꾼 경우입니다.
옛 CORS 문서의 용어이고 Fetch 규격은 쓰지 않습니다. 규격에는 safelisted 메서드와 safelisted 요청 헤더만 정의돼 있습니다.
아닙니다. User-Agent 처럼 브라우저가 관리하는 헤더는 판정에 영향이 없으니, 코드에서 직접 넣은 이름만 적으세요.