Network
[Network] CORS
2juhyunju
2022. 8. 25. 10:08
CORS
CORS (Cross Origin Resource Sharing) 는 교차 출처 리소스 공유라고 부르며 추가 HTTP 헤더를 사용하여 한 출처에서 실행 중인 웹 어플리케이션이 다른 출처의 선택한 자원에 접근할 수 있는 권한을 부여하도록 브라우저에게 알려주는 체제이다. 쉽게 말하면 클라이언트 어플리케이션과 다른 origin을 가진 서버 어플리케이션이 서로 통신할 수 있도록 허용하는 프로토콜 이라고 생각하면 쉽게 생각할 수 있다.
CORS 종류
단순요청 ( Simple requests )
사전요청 없이 바로 요청을 보내는 것이다 여기에는 몇 가지 조건을 만족해야 한다.
- 메서드가 GET,POST HEAD 이어야 한다.
- Content-Type이 application/x-www-form-urlencoded, multpart/form-data,text/plain 이어야 한다.
- 헤더가 Accept, Accept-Language, Content-Language, Content-Type 만 허용
사전요청 ( preflighted requests )
사전 요청은 OPTIONS 메서드를 통해 다른 도메인 리소스에 요청이 가능한지 확인하는 작업 요청이 가능하면 실제 요청을 보낸다.
인증요청 ( Credentialed Request )
인증 관련 헤더를 포함할 때 사용하는 요청이다.