지식

[CORS] Cross-Origin Resource Sharing

고구마맨 2023. 5. 10. 16:07
반응형

CORS

- 웹 브라우저에서 같은 출처의 리소스가 아닌 다른 출처의 리소스를 요청할 수 있게 하는 정책으로 동일 출처 정책(Same Origin Policy, SOP) 문제 해결 방법

 

- CORS는 리소스를 공유하려는 서버 간 정한 HTTP Header가 있을 때에만 리소스 접근을 허용하고 없을 때에는 접근을 제한한다.

 

 

요청 방식은 Simple RequestPreflight 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)으로 나누어서 서버로 전송하는 방식. 예비 요청에는 HTTPOPTIONS 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