[Other] HTTP Status Code

Byron·2021년 8월 12일
1

Other

목록 보기
8/13

HTTP Status Code

HTTP 응답 상태 코드는 특정 HTTP 요청이 성공적으로 완료되었는지 알려준다.
응답은 5개의 그룹으로 나누어진다.

  • 1XX - 정보를 제공하는 응답 (요청을 받았으며 프로세스를 계속 진행함)
  • 2XX - 성공적인 응답 (클라이언트가 요청한 동작을 수신해 성공적으로 처리함)
  • 3XX - 리다이렉션 완료 (클라이언트는 요청 완료를 위해 추가 작업 조치가 필요함)
  • 4XX - 클라이언트 에러 (요청 문법이 잘못되었거나 클라이언트에 문제가 있음)
  • 5XX - 서버 에러 (유효한 요청에 대한 응답이 명백히 실패함)

각 코드의 상세 내용들은 하기 References에 있는 링크(MDN 등)에서 확인할 수 있으나,
자주 쓰이는 상태 코드를 조금 정리해 보았다.

100

100 Continue
임시적인 응답으로 지금까지의 상태가 괜찮고, 클라이언트가 계속해서 요청을 할 수 있으며
이미 요청을 완료한 경우에는 무시해도 된다는 뜻

101 Switching Protocol
클라이언트가 보낸 업그레이드 요청 헤더에 대한 응답에 들어감
서버에서 프로토콜을 변경할 것임을 알려줌

102 Processing
서버가 요청을 수신하였으며 이를 처리하고 있지만, 아직 제대로 된 응답을 알려줄 수 없음

200

200 OK
가장 일반적으로 볼 수 있는 HTTP 상태로 요청을 성공적으로 처리했을 때 쓰임

201 Created
요청이 성공적이었으며 그 결과로 새로운 리소스가 생성됨
일반적으로 POST 요청 또는 일부 PUT 요청 이후에 따라옴

202 Accepted
요청이 받아들여졌지만 처리되지 않았음을 의미

203 Non-Authoritative Information
응답받은 메타정보가 서버에 저장된 원본하고는 동일하지는 않지만 로컬이나 다른 복사본에서 수집되었음
보통은 200 OK 응답코드가 203 Non-Authoritative Information 응답코드보다 우선적으로 응답함

204 No Content
성공적으로 처리했지만 컨텐츠를 제공하지는 않음

206 Partial Content 
컨텐츠의 일부 부분만 제공함
보통 클라이언트에서 시작 범위나 다운로드할 범위를 지정한 경우 자동으로 해당 부분만 제공할 때 사용

300

300 Multiple Choice
요청에 대해서 하나 이상의 응답이 가능함
서버에서 여러 개의 응답이 있음을 알릴 때 사용할 의도로 만들어졌으나, 
정작 응답을 선택하는 방법은 표준화되지 않아 사용되지 않음

301 Moved Permanently
요청한 리소스의 URI가 영구적으로 변경되었음을 의미함
새로운 URI가 응답에서 주어질수도 있음

302 Found
이 응답 코드는 요청한 리소스의 URI가 일시적으로 변경되었음을 의미함

400

400 Bad Request
잘못된 문법으로 인하여 서버가 요청을 이해할 수 없음을 의미

401 Unauthorized
사실은 미인증(unauthenticated)을 의미함
인증이 필요한 리소스에 인증 없이 접근할 경우 발생 
단순히 권한이 없는 경우 이 응답 코드 대신 403 Forbidden을 사용함

403 Forbidden
클라이언트가 콘텐츠에 접근할 권리를 가지고 있지 않아 서버가 요청을 거부할 때 발생
(관리자가 해당 사용자를 차단한 경우 등)

404 Not Found
요청받은 리소스를 찾을 수 없음

408 Request Timeout
요청 중 시간이 초과되었음

500

500 Internal Server Error
서버가 처리 방법을 모르는 상황이 발생해 작업을 처리할 수 없음

502 Bad Gateway
서버가 요청을 처리하는 데 필요한 응답을 얻기 위해 게이트웨이로 작업하는 동안 잘못된 응답을 수신했음

503 Service Temporarily Unavailable
서비스를 일시적으로 사용할 수 없음
서버 유지보수를 위해 작동이 중단되거나 과부하가 걸렸을 때 사용됨

504 Gateway Timeout
게이트웨이가 연결된 서버로부터 응답을 받을 수 없었을 때 사용됨

References

https://developer.mozilla.org/ko/docs/Web/HTTP/Status
https://ko.wikipedia.org/wiki/HTTP_%EC%83%81%ED%83%9C_%EC%BD%94%EB%93%9C

profile
step by step

0개의 댓글