
상태 코드들
1XX → 정보 (요청 수신 후 처리 상태)
해당 요청에 대한 성공, 실패 여부
쓰는 거 자체를 못봄
2XX → 성공
정상 처리
200 (OK)
201 (Created)
202 (Accepted)
주로 수신은 되었으나 즉시 처리를 하지 않는 경우에 사용
랭킹 집계 같은 큰 데이터의 집계 등에서 사용
Batch 같은 스케줄러 작업에 사용
204 (NO Content)
요청은 성공, 응답 데이터가 없을 때 → 삭제 같은 작업
3XX → 리다이렉트
요청을 완료하려면 추가 행동이 필요할 때 사용
Location Http Header 가 있으면 Location 으로 리다이렉트 한 후 처리
OAuth 에서 자주 보임
4XX → 클라이언트 에러
클라이언트 측 오류, 잘못된 문법으로 서버가 요청을 수행할 수 없을 때
요청 자체가 잘못되었으므로 같은 요청의 재시도는 항상 실패함
400 (Bad Request)
클라이언트가 요청 내용을 수정 해야함
GET 메서드에 POST 요청을 하는 등의 행위를 했을 때
API 스펙과 일치하지 않을 때 (숫자인데 문자형을 보냈거나 하는)
401 (Unauthorized)
클라이언트의 리소스 접근에 인증이 필요할 경우
로그인 같은 경우에 많이 쓰임
403 (Forbidden)
서버가 요청을 받았지만 거부함
일반 유저가 관리자에 접근하는 경우
404 (Not Found)
요청한 리소스가 서버에 없을 때
소스를 숨길 때도 사용함
5XX → 서버 에러
서버에서 문제가 발생한 경우
재시도시 성공할 수도 있음
500 (Internal Server Error)
서버 오류를 표기하는 대표적인 방법
503 (Service Unabailable)
서비스 이용 불가시
Retry-After 헤더를 통해 얼마 뒤 복구 되는지 알수 있음