개요
HTTP 프로토콜에서 클라이언트에게 서버의 상태를 알려주는 용도로 사용되는 것이 HTTP Status Code 이다. 404 NOT FOUND 처럼 잘 알려진 코드도 있고, 그렇지 않은 것도 있어 내가 알아보고자 작성한다.
번호별 의미와 자주 사용되는 사례
1xx (Informational): 요청을 받았으며 작업을 계속한다
- 100(CONTINUE): 요청자는 요청을 계속해야 한다. 서버는 이 코드를 제공하여 요청의 첫 번째 부분을 받았으며 나머지를 기다리고 있음을 나타낸다.
2xx (Successful): 클라이언트가 요청한 동작을 수신하여 이해했고 승낙했으며 성공적으로 처리했음을 가리킨다
- 200 OK: 요청이 성공했으며, 서버가 요청한 정보를 정상적으로 반환
- 201 Created: 요청이 성공했으며, 새로운 리소스가 생성
- 204 No Content: 요청이 성공했으며, 서버가 반환한 정보가 없음
3xx (Redirection): 클라이언트는 요청을 마치기 위해 추가 동작을 취해야 한다
- 301 Moved Permanently: 요청한 리소스의 위치가 변경되었으므로 클라이언트는 새로운 위치로 다시 요청해야 한다
4xx (Client Error): 클라이언트 오류가 있음을 나타낸다
- 400 Bad Request: 클라이언트 요청이 잘못됨. 또는 서버에서 요청을 이해하지 못함
- 401 Unauthorized: 클라이언트가 인증 정보를 제공하지 않았거나 인증이 실패했음
- 403 Forbidden: 클라이언트가 요청한 리소스에 대한 액세스 권한이 없다
- 404 Not Found: 요청한 리소스를 서버에서 찾을 수 없다
5xx (Server Error): 서버가 유효한 요청을 명백하게 수행하지 못했음을 나타낸다
- 500 Internal Server Error: 서버 내부 오류