✔️ CORS
CORS란?
- Cross Origin Resource Sharing
- 웹 서버에서 보안 cross-domain 데이터 전송을 활성화하는 cross-domain 접근 제어권을 부여하도록 함
- 처음 전송되는 리소스의 도메인과 다른 도메인으로부터 리소스가 요청될 경우
해당 리소스는 cross-origin HTTP 요청에 의해 요청되게 되는데
이때 보안 상의 이유로, 브라우저들은 스크립트 내에서 초기화되는 cross-orgin HTTP 요청을 제한함
또는 same-origin 정책을 따라 자신과 동일한 도메인으로 HTTP 요청을 보내는 것만 가능함
이러한 웹 애플리케이션의 문제를 개선시키기 위해,
개발자들은 브라우저 벤더사들에게 cross-domain 요청을 할 수 있도록 요청해 CORS가 생기게 됨
CORS 동작 과정
- CORS 요청 시에 미리 OPTIONS 주소로 서버가 CORS를 허용하는지 물어봄
- 이때 Access-Control-Request-Method로 실제로 보내고자 하는 메서드를 알리고
Access-Control-Request-Headers로 실제로 보내고자 하는 헤더들을 알림 - 서버는 Access-Control-Request에 대응되는 Access-Control-Allow 항목들로 허용하는 메서드와 헤더를 응답하는데 사용
- Access-Control-Request와 Access-Control-Allow가 일치하면 CORS 요청이 이루어지게 됨
'Tech Interview > Network' 카테고리의 다른 글
[Network] DNS (0) | 2024.01.23 |
---|---|
[Network] 쿠키와 세션 (0) | 2024.01.17 |
[Network] HTTP와 HTTPS (0) | 2024.01.16 |
[Network] TCP와 UDP (0) | 2024.01.16 |
[Network] TCP와 IP (0) | 2024.01.15 |