100 Continue: 초기 요청이 수락되었음을 나타내는 HTTP 상태 코드

スポンサーリンク
スポンサーリンク

100 Continue에 대하여

100 Continue의 개요

요청 준비 단계를 최적화하는HTTP 상태 코드

100 Continue

개요 100 Continue는 클라이언트가 서버에 보낼 요청이 유효하며, 클라이언트가 요청 본문을 계속 전송해도 된다는 것을 알리는 HTTP 상태 코드입니다. 이 코드는 일반적으로 요청 헤더에 Expect: 100-continue가 포함된 경우 서버에서 반환됩니다.

의미 서버가 요청의 초기 부분을 수신하였으며, 클라이언트에게 요청을 계속 진행하라고 지시했습니다.

100 Continue가 반환되는 경우

  • 클라이언트가 Expect: 100-continue 헤더를 포함하여 요청을 보낸 경우
  • 요청 본문을 보내기 전에 서버의 승인을 받고자 할 경우
  • 큰 데이터를 전송하면서 불필요한 통신을 방지하려고 할 경우

100 Continue의 예시

요청 초기 부분 확인

POST /upload HTTP/1.1  
Host: example.com  
Content-Length: 1048576  
Expect: 100-continue  

응답 예시:

HTTP/1.1 100 Continue  

설명: 클라이언트가 Expect: 100-continue 헤더를 포함하여 요청을 보내면, 서버는 100 상태 코드를 반환하여 요청을 수락할 준비가 되었음을 알립니다. 이 후 클라이언트는 요청 본문(예: 대용량 데이터)을 계속 전송할 수 있습니다.

오류 상황에서의 대체 응답

POST /upload HTTP/1.1  
Host: example.com  
Content-Length: 1048576  
Expect: 100-continue  

응답 예시:

HTTP/1.1 417 Expectation Failed  

설명: 서버가 요청을 수락할 준비가 되지 않은 경우, 100 상태 코드 대신 417 Expectation Failed를 반환할 수 있습니다.

주의 사항

100 Continue를 반환할 때 주의해야 할 사항:

  • 요청 본문을 받기 전에 반환
    100 상태 코드는 요청 본문을 수신하기 전에 반환해야 합니다.
  • 클라이언트의 기대를 적절히 처리
    Expect: 100-continue를 무시하면 클라이언트-서버 간 통신 효율이 저하될 수 있습니다.

관련 HTTP 상태 코드와의 비교

100 Continue와 관련된 HTTP 상태 코드에 대한 설명:

  • 200 OK: 요청이 완전히 성공했을 때 사용됩니다. 100 상태 코드는 중간 단계를 나타냅니다.
  • 417 Expectation Failed: Expect: 100-continue가 충족되지 않았을 때 반환되는 오류 상태입니다.

이 차이를 이해하면 100 상태 코드를 적절히 사용할 수 있습니다.