TIL)23.08.24_기술면접(CORS)

주민·2023년 8월 25일
0

TIL

목록 보기
71/84

CORS(Cross Origin Resource Sharing)에 대해 설명해주세요.

교차 출처 리소스 공유라고 하며 다른 출처의 리소스 공유에 대한 허용/비허용 정책입니다.

  • 등장 배경
    만약 api를 통해 다른 기능을 넣으려고 한다면 브라우저에 페이지를 제공하는 도메인과 api의 도메인이 달라 SOP 정책에 따라 다른 출처의 리소스를 차단하면서 에러가 생기게 된다. 하지만 여러 리소스를 사용해야하는 경우가 있기 때문에 CORS가 나오게 되었다.
    (* 과거에는 JSONP 방식을 사용하였으나 보안상에 이슈가 있어 현재는 사용하지 않음 )

  • 사용 방법
    서버의 동의를 받아 추가 HTTP 헤더를 사용하여, 한 출처에서 실행 중인 웹 애플리케이션이 다른 출처의 선택한 자원에 접근할 수 있는 권한을 부여하도록 브라우저에 알려주는 체제이다

  • 동작방식

    • 예비요청 (Preflight Request)
      : 예비 요청을 보내 서버와 잘 통신 되는지 요청을 먼저 보내 확인하고 본 요청을 보내는 것으로 Http 메서드를 OPTIONS으로 보낸다는 특징이 있다.
    • 단순 요청 (Simple Request)
      : 본 요청을 서버에 직행으로 보내고 서버가 응답을 보내주면 브라우저가 CORS정책 위반 여부를 검사하는 방식이다.
    • 인증정보 포함 요청 (Credentialed Request)
      : 서버에게 자격 인증 정보(Credential)를 쿠키나Authorization 헤더에 실어 요청을 보내는 것으로 인증 정보가 들어가 있기 때문에 예비/단순 요청과 다른 형태로 통신하게 된다.

0개의 댓글

관련 채용 정보