Lee Jaeyoon2
재유니버스
Lee Jaeyoon2
전체 방문자
오늘
어제
  • 분류 전체보기 (228)
    • TIL (165)
    • 생각 (11)
    • 서평 (1)
    • JavaScript & TypeScript (4)
    • React (0)
    • C (45)
    • 에러 핸들링 (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 코딩 도장
  • 5F
  • C
  • react
  • 실수
  • 플래그
  • 코드숨 리액트
  • 객체
  • dotenv-webpack
  • 변수
  • 회고
  • TiL
  • c언어
  • dotenv
  • 코드숨 리액트 8기
  • 코드숨
  • 심사 문제
  • C언어 코딩 도장
  • map
  • JavaScript

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
Lee Jaeyoon2

재유니버스

TIL - 20220917
TIL

TIL - 20220917

2022. 9. 17. 23:32

 오늘은 모던 JavaScript 튜토리얼에서 CORS에 대해 공부했다. 작성한 질문은 다음과 같다.

 크로스 오리진 요청은 다음과 같은 요청들이 있다.

  • 안전한 요청
  • 안전하지 않은 요청

 

 안전한 요청은 다음 조건들을 충족해야 한다.

  • 메서드는 GET, POST, HEAD 중 하나여야 한다.
  • 헤더는 Accept, Accept-Language, Content-Language, 값이 application/x-www-form-urlencoded나 multipart/form-data, text/plain인 Content-Type

 

 안전한 요청은 다음 절차를 따른다.

  • 오리진 정보가 담긴 Origin 헤더와 함께 브라우저가 요청을 보낸다.
  • 자격 증명이 없는 요청의 경우, 서버가 Origin 값과 동일하거나 *인 Access-Control-Allow-Origin 응답을 보낸다.
  • 자격 증명이 있는 요청의 경우, 서버는 Origin 값과 동일한 Access-Control-Allow-Origin 값이 true인 Access-Control-Allow-Credentials 응답을 보낸다.

 

 안전하지 않은 요청은 다음 절차를 따른다.

  • 먼저, 사전 요청 'preflight'이 본 요청 전에 전송된다.
  • 브라우저가 동일한 URL에 OPTIONS 메서드를 사용한 preflight 요청을 보내는데 이 때 헤더엔 본 요청의 메서드 정보가 담긴 Access-Control-Request-Method와 본 요청의 헤더 정보가 담긴 Access-Control-Request-Headers가 들어간다.
  • 서버는 상태 코드 200과 함께 허용되는 메서드 목록이 담긴 Access-Control-Allow-Methods 허용되는 헤더 목록이 담긴 Access-Control-Allow-Headers, 몇 초간 preflight 요청 없이 크로스 오리진 요청을 바로 보낼 지에 대한 정보가 담긴 Access-Control-Max-Age 헤더를 담은 응답을 전송한다.
  • 이후엔 본 요청이 전송되고, 절차는 안전한 요청과 동일하다.

'TIL' 카테고리의 다른 글

TIL - 20220919  (0) 2022.09.19
TIL - 20220918  (0) 2022.09.18
TIL - 20220916  (0) 2022.09.16
TIL - 20220915  (0) 2022.09.15
TIL - 20220914  (0) 2022.09.14
    'TIL' 카테고리의 다른 글
    • TIL - 20220919
    • TIL - 20220918
    • TIL - 20220916
    • TIL - 20220915
    Lee Jaeyoon2
    Lee Jaeyoon2

    티스토리툴바