API 개발자가 꼭 알아야 할 HTTP 상태코드 정리 (Status Code)

Sue·2025년 6월 10일
post-thumbnail

상태코드(Status Code)란?

상태코드(Status Code)는 클라이언트(웹 브라우저, 앱 등)가 서버에 HTTP 요청을 보냈을 때, 서버가 그 요청을 어떻게 처리했는지 숫자로 알려주는 응답 코드입니다.
이 코드는 항상 3자리 숫자(예: 200, 404, 500 등)로 구성되며, 요청의 성공·실패 여부와 그 원인을 빠르게 파악할 수 있도록 도와줍니다.


상태코드의 분류

상태코드는 첫 번째 숫자에 따라 5가지 그룹으로 나뉩니다:

그룹의미대표 코드 및 설명
1xx정보(Informational)100 Continue: 요청을 계속 진행하라는 의미
2xx성공(Successful)200 OK: 요청 성공, 201 Created: 생성됨
3xx리다이렉션(Redirection)301 Moved Permanently: 영구 이동
4xx클라이언트 오류(Client Error)400 Bad Request: 잘못된 요청, 404 Not Found: 존재하지 않는 페이지
5xx서버 오류(Server Error)500 Internal Server Error: 서버 내부 오류, 503 Service Unavailable: 서비스 불가

대표적인 상태코드 예시

  • 200 OK: 요청이 정상적으로 처리됨 (가장 많이 보는 성공 코드)
  • 201 Created: 요청이 성공적으로 처리되어 리소스가 새로 생성됨
  • 301 Moved Permanently: 요청한 리소스가 영구적으로 다른 위치로 이동
  • 400 Bad Request: 잘못된 문법 등으로 서버가 요청을 이해할 수 없음
  • 401 Unauthorized: 인증이 필요하거나 인증 실패
  • 403 Forbidden: 서버가 요청을 이해했지만 권한 부족 등으로 거부
  • 404 Not Found: 요청한 리소스(페이지 등)를 찾을 수 없음
  • 500 Internal Server Error: 서버 내부 오류로 요청 처리 실패
  • 502 Bad Gateway: 게이트웨이/프록시 서버가 잘못된 응답을 받음
  • 503 Service Unavailable: 서버가 일시적으로 요청을 처리할 수 없음 (과부하, 점검 등)

상태코드는 어디에 쓰이나?

  • API 개발: 클라이언트가 요청 결과를 쉽게 판단하고, 적절한 후속 조치를 할 수 있도록 상태코드를 확인합니다.
  • 웹 개발: 페이지 이동, 오류 처리, 인증 등 다양한 상황에서 상태코드로 흐름을 제어합니다.
  • 디버깅: 문제 발생 시 상태코드를 통해 원인을 빠르게 파악할 수 있습니다.

참고 팁

  • 상태코드는 응답의 첫 줄(상태 표시줄)에 위치하며, 간단한 이유 문구(예: 404 Not Found)와 함께 제공됩니다.
  • RESTful API, 웹사이트, 모바일 앱 등 거의 모든 HTTP 기반 시스템에서 사용됩니다.

즉, 상태코드는 서버가 클라이언트의 요청을 어떻게 처리했는지 3자리 숫자로 알려주는 신호이며, API와 웹 개발에서 필수적으로 이해해야 하는 기본 개념입니다.

profile
AI/ML Engineer

0개의 댓글