Dazzling 개발 노트

HTTP 상태 코드의 기본 개념과 주요 코드들 본문

카테고리 없음

HTTP 상태 코드의 기본 개념과 주요 코드들

dj._.dazzling 2024. 2. 23. 10:46

HTTP 상태 코드는 웹 서버가 클라이언트의 요청에 대해 반환하는 3자리 숫자로, 요청의 성공 여부 및 그 이유를 나타낸다. 이 코드들은 크게 5가지 범주로 나뉘며, 각 범주는 특정한 유형의 응답 상태를 대표한다.

1xx: 정보 응답

  • 100 Continue: 클라이언트는 요청을 계속 진행할 수 있다. 서버는 요청의 초기 부분을 받았으며, 나머지를 계속 기다리고 있다.

2xx: 성공

  • 200 OK: 요청이 성공적으로 처리되었다. 이는 가장 흔히 받게 되는 응답으로, 요청한 작업이 예상대로 이루어졌음을 나타낸다.
  • 201 Created: 요청이 성공적으로 이루어져 새로운 리소스가 생성되었다. 이 응답은 주로 POST나 PUT 요청에 대해 반환된다.
  • 204 No Content: 요청이 성공적으로 이루어졌으나, 클라이언트에게 전달할 콘텐츠가 없다.

3xx: 리다이렉션

  • 301 Moved Permanently: 요청한 리소스의 URI가 영구적으로 변경되었다. 새 위치는 응답의 Location 헤더에 주어진다.
  • 302 Found: 요청한 리소스가 일시적으로 다른 URI로 이동되었다. 이는 임시 리다이렉션을 의미한다.
  • 304 Not Modified: 클라이언트가 마지막 요청 이후 리소스가 변경되지 않았으므로, 클라이언트는 캐시된 버전을 사용할 수 있다.

4xx: 클라이언트 오류

  • 400 Bad Request: 서버가 요청을 이해할 수 없다. 잘못된 요청 구문, 크기 또는 라우팅으로 인해 발생할 수 있다.
  • 401 Unauthorized: 요청이 인증을 필요로 한다. 클라이언트는 요청과 함께 유효한 인증 자격 증명을 제공해야 한다.
  • 403 Forbidden: 서버가 요청을 이해했지만, 권한 부족으로 인해 거부한다.
  • 404 Not Found: 서버가 요청한 리소스를 찾을 수 없다. URL이 잘못되었거나 리소스가 삭제되었을 때 이 응답을 받게 된다.

5xx: 서버 오류

  • 500 Internal Server Error: 서버 내부 오류로, 요청을 처리할 수 없다. 이는 서버에서 예기치 않은 상황이 발생했음을 나타낸다.
  • 503 Service Unavailable: 서버가 일시적으로 요청을 처리할 수 없다. 대개 서버 과부하나 유지보수로 인한 것이다.

HTTP 상태 코드는 웹 개발에서 중요한 역할을 한다. 이를 통해 개발자는 서버의 응답 상태를 정확하게 파악하고, 필요한 경우 사용자에게 적절한 피드백을 제공할 수 있다. 상태 코드의 올바른 이해와 사용은 웹 애플리케이션의 유연성과 사용자 경험을 크게 향상시킨다.