CORS
- 웹 브라우저에서 같은 출처의 리소스가 아닌 다른 출처의 리소스를 요청할 수 있게 하는 정책으로 동일 출처 정책(Same Origin Policy, SOP) 문제 해결 방법
- CORS는 리소스를 공유하려는 서버 간 정한 HTTP Header가 있을 때에만 리소스 접근을 허용하고 없을 때에는 접근을 제한한다.
요청 방식은 Simple Request 와 Preflight Request 가 있다.
Simple Request
· HTTP Method 가 GET, POST, HEAD 중의 방식을 사용하는 경우
· POST 방식일 경우 Content-type을 아래 중 1가지 사용
- application/x-www-form-urlencoded
- multipart/form-data
- text/plain(따로 지정하지 않을 시 default 방식)
1) 작동방식
(1) 요청 헤더에 Origin 정보를 실어 서버로 request → (2) 서버는 요청 헤더의 Origin 확인 → (3) 응답 헤더에 Accecss-Control-Allow-Origin(접근 허용 출처 정보) 담아 response → (4) 유저 브라우저는 값 비교 후 유효 응답 판단
Preflight Request
· 요청을 한 번에 처리하지 않고 예비 요청(Preflight Request)과 본 요청(Main Request)으로 나누어서 서버로 전송하는 방식. 예비 요청에는 HTTP의 OPTIONS Method가 사용된다.
※ Origin
URL 은 다양한 요소들로 구성되어 있다. 이것들의 정보의 합처럼 서버의 특정 경로에 접근하기 위한 기본적인 정보를 Origin 이라고 한다. 기본적으로 프로토콜(http,https) , 호스트(address) , 경로(Path), 포트(Port) 를 뜻한다.
'지식' 카테고리의 다른 글
[JSP] getAttribute() / getParameter() (0) | 2023.05.31 |
---|---|
[운영체제 구조] OS, Operating System (0) | 2023.05.25 |
[hosts 파일 변경] (0) | 2023.04.27 |
[SEVER] Serverless (0) | 2023.03.03 |
[Debugging] 브라우저 디버깅 (0) | 2023.02.13 |