HTTP 응답 상태 코드

Jae Chan·2023년 10월 30일
0

TIL

목록 보기
8/10

HTTP 응답 상태 코드

HTTP란 서로 다른 웹끼리의 정보전송을 하기 위한 약속 및 규칙(이를 프로토콜이라고 한다.)이다. 요청(Request) 및 응답(Response)으로 이루어져 있다.

HTTP의 경우 응답 상태 코드라는 것이 존재하며 특정 HTTP의 요청이 성공적으로 완료되었는지 알려준다.
응답의 경우 5개의 그룹으로 나누어져 있다.

  • 정보를 제공하는 응답
  • 성공적인 응답
  • 리다이렉트 (Redirect)
  • 클라이언트 에러
  • 서버 에러

정보 응답 📮

상태코드설명
100, Continue임시적인 응답. 응답의 상태가 괜찮으며 클라이언트가 계속 요청하거나 이미 요청을 완료한 경우이다.
101, Switching Protocol클라이언트가 보낸 요청 헤더에 대한 응답에 들어가며, 서버에서 프로토콜을 변경할 것을 알림.

성공 응답 ✅

상태코드설명
200, OK요청이 성공적으로 완료됐으며, 성공의 의미는 HTTP 메소드에 따라 달라진다. 1-1 추가 설명
201, Created요청이 성공적으로 완료됐으며, 결과값으로 새로운 리소스가 생성됐음.
204, No Content요청에 대해서 보내줄 수 있는 콘텐츠가 없으나, 헤더는 의미 있을 수 있음.

1-1

  • GET : 리소스를 불러와서 메세지 바디에 전송됐음.
  • HEAD : 개체 헤더가 메세지 바디에 있음.
  • PUT : 수행 결과에 대한 리소스가 메세지 바디에 전송됐음.
  • POST : PUT 메소드와 같은 의미임.
  • TRACE : 메세지 바디는 서버에서 수신한 요청 메세지를 포함하고 있음.

리다이렉션(Redirection) 메세지 응답

300번대의 메세지이다.

상태코드설명
300, Multiple Choice요청에 대해서 하나 이상의 응답이 가능하다. 클라이언트는 하나를 반드시 선택해야 한다.
301, Moved Permanently요청한 리소스의 URI가 변경되었음을 의미한다.
302, Found요청한 리소스의 URI가 일시적으로 변경되었음을 의미한다. 새롭게 변경된 URI는 나중에 만들어질 수 있다.

클라이언트 에러 메세지 응답 ❌

요청이 올바르지 않다는 의미이다. 해당 요청들의 경우 브라우저에 노출된다.
400번대의 메세지이다.

상태코드설명
400, Bad Request이 응답은 잘못된 문법으로 인하여 서버가 요청을 이해할 수 없음을 의미한다.
401, Unauthorized인증이 필요한 리소스에 인증없이 요청한 경우를 의미한다.
403, Forbidden클라이언트는 컨텐츠에 접근할 권리를 가지고 있지 않다. 서버가 요청을 거부할 때 발생한다.
404, Not Found서버가 요청받은 리소스를 찾을 수 없다. 즉 서버와 연결은 됐으나 전달받은 데이터가 없음을 의미함.
405, Method Not Allowed요청한 메소드를 서버가 전달받았으나, 제거됐거나 사용할 수 없는 상태이다.
410, Gone요청한 컨텐츠가 서버에서 영구적으로 삭제되었으며, 전달해 줄 수 있는 주소 역지 존재하지 않은 상태이다.

서버 에러 응답 💻❌

서버가 응답할 수 없는 의미이며 해당 요청이 올바른지의 여부를 확인할 수 없는 경우이다.
500번대의 메세지이다.

상태코드설명
500, Internal Server Error서버에 오류가 발생하여 작업을 수행할 수 없을 경우이다. 서버는 처리 방법을 알 수 없다.
501, Not Implemented요청 방법은 서버에서 지원되지 않으므로 처리할 수 없다. 서버가 지원해야하는 유일한 방법은 GET 또는 HEAD이다.
502, Bad Gateway게이트웨이가 잘못된 응답을 받았을 때를 의미한다.

0개의 댓글