HTTP status code

Younghwan Cha·2023년 2월 23일
0
post-thumbnail
  • 1xx (Informational): 요청이 수신되어 처리중
  • 2xx (Successful): 요청 정상 처리
  • 3xx (Redirection): 요청을 완료하려면 추가 행동이 필요
  • 4xx (Client Error): 클라이언트 오류, 잘못된 문법등으로 서버가 요청을 수행 할 수 없음
  • 5xx (Server Error): 서버 오류, 서버가 정상 요청을 처리하지 못함

2xx ( Successful )

클라이언트의 요청을 성공적으로 처리

  • 200 OK
    GET
  • 201 Created
    POST
  • 202 Accepted
    요청은 받았으나 아직 처리 전
  • 204 No Content
    /save button

3xx ( Redirection )

요청을 완료하기 위해 유저 에이전트의 추가 조치 필요

웹 브라우저는 3xx 응답의 결과에 Location 헤더가 있으면, Location 위치로 자동 이동한다.

  • 300 Multiple Choices
  • 301 Moved Permanently
    변경된 경로로 리다이렉트, POST 본문 유지 x
  • 302 Found
    다른 페이지로 리다이렉트, 요청 메서드 GET 으로 변경 (May)
  • 303 See Other
    요청 매서드 GET 으로 변경
  • 304 Not Modified
    캐시를 목적으로 사용
    클라이언트에게 리소스가 수정되지 않았음을 알려준다.
    --> 클라이언트는 로컬 PC 에 저장된 캐시를 재사용한다.
    (캐시로 리다이렉트 한다.)
    메시지 바디 x
  • 307 Temporary Redirect
    리다이렉트시 요청 매서드와 본문 유지
  • 308 Permanent Redirect
    변경된 경로로 리다이렉트, POST 본문 유지 o

리다이렉션의 종류

  • 영구 리다이렉션 - 특정 리소스의 URI 가 영구적으로 이동
    • /members -> /users
  • 일시 리다이렉션 - 일시적인 변경
    • 주문 완료 후 주문 내역 화면으로 이동
    • PRG: Post/Redirect?Get
  • 특수 리다이렉션
    • 결과 대신 캐시를 사용

301: Moved Permanently
302: Moved Temporarily

301 vs 302

301 의 경우 페이지를 영구적으로 이동하는 반면 302 는 일시적으로 다른 URL 로 이동하게 된다.
이 경우, 검색 엔진은 리다이렉션된 URL 의 리소스에 대해서 링크를 업데이트 하지 않기 때문에 SEO 에 영향을 주지 않는다.


4xx ( Client Error )

클라이언트의 요청에 오류

  • 400 Bad Request
    클라이언트가 잘못된 요청을 해서 서버가 요청을 처리할 수 없음

  • 401 Unauthorized
    클라이언트가 해당 리소스에 대한 인증이 필요함 --> 로그인 x

    • 인증 ( Authentication ): 본인이 누구인지 확인 ( 로그인 )
    • 인가 ( Authorization ): 권한 부여
  • 403 Forbidden
    서버가 요청을 이해했지만 승인을 거부함 --> 권한 x

  • 404 Not Found
    요청 리소스를 찾을 수 없음
    403 에러 메세지를 대신하기도 함 (리소스를 숨기고 싶을 때)

  • 429 Too Many Requests Error
    보통 rate limit 이 존재하는 api 에 많은 요청을 보냈을 경우 나타난다.

  • 499 client closed request
    요청을 보낼 때 대다수의 경우 timeout 시간을 지정하여 요청을 보내고 일정 시간동안 응답이 없을 경우 요청을 종료하도록 한다. 이때, 499 error code 를 통해서 client 가 요청을 종료했음을 알려준다.


5xx ( Server Error )

서버 오류

  • 500 Internal Server Error
    서버 문제로 오류 발생
  • 503 Service Unavailable
    서비스 이용 불가
profile
개발 기록

0개의 댓글