← 질문 목록
#280깊이 0

브라우저가 요청을 미리 한 번 더 보내는 이유는?

프론트엔드기초프로토콜

보내도 되는 요청인지 서버에 먼저 묻기 때문이다. 답을 받은 뒤에야 진짜 요청을 보낸다.

  1. 1. 브라우저에서 서버로: 이 요청을 보내도 되냐고 묻는다
  2. 2. 서버에서 브라우저로: 허용하는 출처와 메서드를 답한다
  3. 3. 브라우저에서 서버로: 맞으면 진짜 요청을 보낸다
  4. 4. 서버에서 브라우저로: 응답에도 허용 출처를 붙인다

막는 쪽은 브라우저다. 단순한 요청은 서버까지 가서 처리되고, 브라우저가 응답만 못 읽게 막는다. 그래서 서버 로그에는 남는다.

먼저 묻는 경우는 다르다. 사전 요청이 거절되면 진짜 요청은 아예 안 간다. GET·HEAD·POST이면서 허용된 헤더와 본문 종류만 쓸 때 이 단계를 건너뛴다.

application/json으로 보내거나 Authorization을 붙이면 먼저 묻는다. 자격 증명까지 보내려면 허용 출처에 *를 못 쓰고 정확한 주소를 적어야 한다.

추천 꼬리질문

0/300

적은 내용은 AI 학습에 쓰일 수 있습니다. 이름이나 연락처는 넣지 말아 주세요.

관련 질문

브라우저가 요청을 미리 한 번 더 보내는 이유는?