# CORS policy

[CORS] Chrome 크로스 도메인 이슈: CORS policy
* 상황 * 포트폴리오 웹 페이지를 로컬에서 실행시켰고, index.html에서 html 파일 5개를 자바스크립트로 로드시켰다. index.html > * 발생한 오류 * 일단 해석해보자. XMLHttpRequest으로 파일을 로드하려는데 CORS 정책에 의해서 접근이 차단됐다. 크로스 요청은 오직 http, data, chrome, chrome-extension, chrome-untrusted, https 이 프로토콜들만 지원해준다. > * 발생 원인 * 로그에 적혀있다. "CORS 정책에 의해서 접근이 차단됐다" CORS는 Cross-Origin Resource Sharing의 약자로 교차 출처 리소스 공유이다. 교차 출처는 다른 출처를 의미한다. 내가 코드를 보기에는 같은 경로의 자원을 요청했지만 **index.html(로컬)에서 home.html(로컬)을 로드하기 위해 요청한 home.htm
CORS
Cross-Origin Resource Sharing 한 출처에서 실행 중인 웹 애플리케이션이 다른 출처의 선택한 자원에 접근할 수 있는 권한을 부여하도록 브라우저에 알려주는 체제 웹 애플리케이션은 리소스가 자신의 출처(도메인, 프로토콜, 포트)와 다를 때 교차 출처 HTTP 요청을 실행한다. https://developer.mozilla.org/ko/docs/Web/HTTP/CORS 무슨 소리인가 싶다. 좀 더 자세히 알아보자. 1. 출처란? (origin?) 웹 컨텐츠에 접근할 때 사용하는 URL의 scheme(프로토콜, 호스트(도메인), 포트) 두 객체의 스킴, 호스트, 포트가 모두 일치하는 경우 같은 출처를 가졌다고 말한다. 동일 출처의 예제 | http://example.com/app1/index.html http://example.com/app2/index.html | 스킴(http)과 호스트(`example.

[Spring] CORS preFlight(OPTIONS Method) Interceptor 검증 로직 제외해주기(Access to XMLHttpRequest at '' from origin '' has been blocked by CORS policy)
이 글을 남기는 이유는, JWT 검증을 수행하는 Interceptor에 의해서 다른 출처(다른 서버)에서의 XHR Request의 OPTIONS로 Request 허용 여부를 먼저 확인하는 preFilght Request가 충돌하는 상황을 길록하기 위해서다. 문제 상황 나의 상황은 아래와 같았다. 먼저 CORS 정책을 제공하는 CORSFilter를 Tomcat Server Configure 인 web.xml에, JWT 검증을 수행하는 Interceptor를 DistpatcherServlet의 Configure인 servlet-context.xml에 등록해두었다. ![](https: