HTTP 상태 코드는 첫 자리로 응답 범주를 먼저 읽는다
상태 코드는 서버 내부 오류명이 아니라 클라이언트가 다음 행동을 정하도록 보내는 프로토콜 신호다.
| 질문 | 대표 코드 | 클라이언트 행동 |
|---|---|---|
| 인증 정보가 없거나 만료됐나? | 401 | 인증을 다시 시도한다. |
| 요청은 이해됐지만 허용되지 않나? | 403 | 권한 문제로 사용자에게 알려준다. |
| 리소스 위치가 바뀌었나? | 301 / 302 / 307 / 308 | 메서드 보존 여부를 확인해 재요청한다. |
| 서버가 나중에 다시 받기를 원하나? | 429 / 503 | Retry-After와 지수 백오프를 본다. |
포인트: 4xx와 5xx를 구분하면 “요청을 고칠지, 서버 복구를 기다릴지”가 바로 결정된다.