본문 바로가기
IT/Java

Http 응답 상태코드 (Http Status Code)

by sgoho01 2019. 4. 30.

HTTP 응답 상태 코드 ~!

서버가 요청을 정상적으로 처리했는가 ? 아니면 요청결과가 에러였는가? 를 알려주는 상태값

클라이언트 요청 ---> 상태코드 2XX : 정상처리
클라이언트 요청 ---> 상태코드 3XX : 리다이렉트
클라이언트 요청 ---> 상태코드 4XX, 5XX : 에러

1. 2xx 성공 (Success)

요청이 정상적으로 처리되었음

  • 200 OK
    • 클라이언트가 보낸 요청을 서버가 정상적으로 처리하였음
  • 201 Created
    • 요청이 성공적이며 그 결과로 새로운 리소스가 생성되었음
    • 이 응답은 일반적으로 POST 요청 또는 PUT 요청 이후에 따라옴
  • 204 No Content
    • 서버가 요청을 받아서 처리하는데 성공했지만, 서버에서 보내줄 데이터가 없는 경우
    • 서버에 정보를 보내는 것만 수행하고, 클라이언트에 대해 새로운 정보를 보낼 필요가 없을 때
  • 206 Partial Content
    • 범위가 지정된 요청에 의해 서버가 부분적으로 GET 요청의 일부만 성공적으로 처리된 경우

2. 3xx 리다이렉트 (Redirection)

요청을 마치기 위해 추가 동작을 취해야함

  • 301 Moved Permanently
    • 요청된 페이지가 새로운 URI로 부여되어 있기 때문에 이후로는 그 페이지를 참조하는 URI를 쭉 사용해야한다는 것을 나타냄
    • 즉, 요청한 페이지는 새로운 주소로 옮겨갔다는걸 뜻함
  • 302 Found
    • 요청된 페이지가 새로운 URI가 할당되어 있기 때문에 그 URI를 참조해주길 바란다는 의미
    • 301과 비슷하지만 302의 경우 영구적인 이동이 아니라 일시적
  • 303 See Other
    • 요청에 대한 자원은 다른 URI에 있기 때문에 GET메서드를 사용해서 얻어야한다는 것을 나타냄
    • 302와 같은 기능이지만 리다이렉트 장소를 GET메소드로 얻어야 한다는 점에서 302와 다름
  • 304 Not mModified
    • 클라이언트가 조건부 요청을 했을 때 자원에 대한 접근은 허락했지만, 조건이 충족되지 않을 때
    • 300번대에 분류되어 있지만 리다이렉트와 관계가 없다.
    • 즉, 변경된 것이 없을 때를 의미

3. 4xx 클라이언트 에러 (Client Error)

클라이언트의 원인으로 에러가 발생

  • 400 Bad Request
    • 요청 구문이 잘못되었을 때
    • 요청내용을 다시 검토할 필요가 있다는 의미
  • 401 Unauthorized
    • 요청에 HTTP인증 정보가 필요하다는 것을 의미
    • 이미 한번 요청이 이루어진 경우 유저인증에 실패했음을 뜻함
    • 의미는 인증 안됨(Unauthenticated)에 더 가깝다
  • 403 Forbidden
    • 요청된 자원의 접근이 거부되었음
    • 서버 측에서 거부의 이류를 명확히 하는 경우에는 Entity Body에 기재해서 표시
    • 403이 발생한 원인의 예로는 파일 시스템의 허가가 부여되지 않은 경우와 접근 권한에 문제가 있음
  • 404 Not Found
    • 요청된 자원이 서버에 없을 경우
    • 즉, 서버에 존재하지 않는 페이지에 대한 요청이 있을 경우

4. 5xx 서버 에러 (Server Error)

서버의 원인으로 에러가 발생

  • 500 Internal Server Error
    • 서버에서 요청을 처리하는 도중 에러가 발생
    • 웹애플리케이션에 에러가 발생한 경우이거나 일시적인 에러발생의 경우
  • 503 Service Unavailable
    • 일시적으로 서버 과부하 상태, 서버 점검중
    • 일반적으로 일시적인 상태를 의미

'IT > Java' 카테고리의 다른 글

YAML/YML  (0) 2021.07.16
자바 명명규칙 (Java Naming)  (0) 2019.04.30

댓글