HTTP Status codes

박재현·2024년 2월 22일
0

Nomadcoder React Study 4기

목록 보기
13/49

image source

클라이언트가 서버에게 요청을 보내면 서버는 클라이언트에게 응답 메세지를 보내는데, 이에따른 처리결과를 status code를 보고 파악할 수 있다.

상태코드는 3자리의 숫자로 되어있는데, 첫번째는 HTTP 응답 종류를 구분하는데 사용하고, 뒤 2개의 숫자는 세부적인 응답 내용을 구분한 번호다.

100~500번대까지 상태코드가 정의되어 있는데, 첫번째 숫자에 따라 아래와 같이 5가지로 분류해서 사용하고 있다.

  • 1xx: Informational(정보 제공)
    - 임시 응답으로 현재 클라이언트의 요청까지는 처리되었으니 계속 진행하라는 의미
  • 2xx: Success(성공)
    - 클라이언트의 요청이 서버에서 성공적으로 처리되었다는 의미
  • 3xx: Redirection(리다이렉션)
    - 완전한 처리를 위해서 추가 동작이 필요한 경우, 주로 서버의 주소 또는 요청한 URI의 웹 문서가 이동되었으니 그 주소로 다시 시도하라는 의미
  • 4xx: Client Error(클라이언트 에러)
    - 없는 페이지를 요청하는 등등 클라이언트의 요청 메세지 내용이 잘못된 경우를 의미
  • 5xx: Server Error(서버 에러)
    - 서버 사정으로 메세지 처리에 문제가 발생한 경우, 서버의 부하, DB 처리 과정 오류, 서버에서 익셉션이 발생하는 경우

각 상태별로 코드가 너무 많아서 몇가지 자주 사용하는것들을 살펴보자


1xx: Information

  • 100: Continue
    - 계속 진행하라는 의미
  • 101: Switching Protocols
    - 현재는 HTTP 1.1이 최신이라 사용할 일이 없다
  • 102: Processing
    - 서버가 처리하는데 오랜시간이 예상되어 클라이언트에서 타임아웃이 발생하지 않도록 이 응답코드를 보냄

2xx: Success

  • 200: OK
    - 서버가 요청을 성공적으로 처리
  • 201: Created
    - 요청이 처리되어서 새로운 리소스가 생성되었다
  • 202: Accepted
    - 요청은 접수하였지만, 처리가 완료되지 않았다

3xx: Redirection

  • 301: Moved Permanently
    - 지정한 리소스가 새로운 URI로 이동했다
  • 303: See Other
    - 다른 위치로 요청해라
  • 307: Temporary Redirection
    - 임시로 리다이렉션 요청이 필요하다

4xx: Client Error

  • 400: Bad Request
    - 요청의 구문이 잘못 되었다
  • 401: Unauthorized
    - 지정한 리소스에 대한 엑세스 권한이 없다
  • 403: Forbidden
    - 지정한 리소스에 대한 엑세스가 금지되었다
  • 404: Not Found
    - 지정한 리소스를 찾을 수 없다

5xx: Server Error

  • 500: Internal Server Error
    - 서버에 에러가 발생했다
  • 501: Not Implemented
    - 요청한 URI의 메소드에 대해 서버가 구현되지 않았다
  • 502: Bad Gateway
    - 게이트웨이 또는 프록시 역할을 하는 서버가 그 뒷단의 서버로부터 잘못된 응답을 받았다
  • 503: Service Unavailable
    - 현재 서버에서 서비스를 제공할 수 없다 (보통 서버 과부하 혹은 서버 점검 등 일시적인 상태)

이보다 더 많은 status code가 있어서 아래 링크를 통해 필요한 부분은 더 찾아보도록 하자

참고

profile
기술만 좋은 S급이 아니라, 태도가 좋은 A급이 되자

0개의 댓글

관련 채용 정보