Status code

sujeong kim·2021년 10월 7일
0

gitbook이 한글 자모가 분리되어 써지지가 않아서... 우선 여기에 임시 등록합니다.
후.. gitbook이 한 눈에 보기 좋고 이쁘게 정리되서 쓰려고 했는데.. 영 한글 버그가 많네요..

1xx Informational

요청이 수신되어 처리 중. 거의 사용하지 않음

2xx Successful

요청 정상 처리

  • 200 Ok
  • 201 Created. 요청 성공해서 새로운 리소스가 생성됨. 응답 헤더의 Location헤더 필드로 리소스를 확인할 수 있음
  • 202 Accepted. 요청이 접수되었으나 처리가 완료되지 않았음. ex) 배치
  • 204 No Content. 서버가 요청을 성공적으로 수행했지만, 응답 페이로드 본문에 보낼 데이터가 없음

3xx Redirection

요청을 완료하려면 추가 행동이 필요. 300대 응답 결과에 Location 헤더가 있다면, 웹브라우저는 Location 위치로 자동 이동한다.

  • 300 Multiple Choices: 사용 안함.
  • 301 Moved Permanently. 영구 리다이렉션으로 원래 url을 사용 안하게 됨. 리다이렉트 요청 메서드가 GET으로 변하고 본문이 제거될 수 있음.
  • 302 Found: 일시적인 리다이렉션으로 원래 url도 사용하고, 임시적으로 다른 곳으로 보냄. 예를 들면 주문 후 주문 완료 페이지로 보내는 것. 리다이렉트 시 요청 메서드가 get으로 변하고 본문이 제거될 수 있음
  • 303 See other: 302와 같은 일시적인 리다이렉션으로 리다이렉트시 요청 메서드가 get으로 변경. 302와 똑같으나 원래 302의 의도는 get으로 변하는 게 아니었는데 브라우저가 그렇게 구현을 해버려서 명확하게 스펙으로 새로 만듦.
  • 304 Not Modified: 캐시를 목적으로 사용하며 클라이언트에게 리소스가 수정되지 않았음을 알려줍니다. 따라서 클라이언트는 로컬 pc에 저장된 캐시를 재사용합니다. 로컬 캐시를 사용해야 하므로 응답에 바디 메시지가 없어야 합니다.
  • 307 Temporary Redirect: 302와 같은 일시적인 리다이렉션이나 리다이렉트 시 요청 메서드와 본문을 유지한다.
  • 308 Permanent Redirect: 영구 리다이렉션으로 301과 기능이 같으나 리다이렉트시 요청 메서드와 본문을 유지한다.

4xx Client Error

클라이언트 오류, 잘못된 문법 등으로 서버가 요청을 수행할 수 없음. 클라이언트가 잘못된 요청을 보내는 것이므로 같은 조건에서는 항상 실패해야 함.

  • 401 Unauthorized: 클라이언트가 해당 리소스에 대한 인증이 필요함. 401 오류 발생 시 응답에 WWW-Authenticate 헤더와 함께 인증 방법을 설명.
  • 403 Forbidden: 서버가 요청을 이해했지만 승인을 거부함. 인증 자격은 있지만 접근 권한이 불충분한 경우.
  • 404 Not Found: 요청 리소스가 서버에 없거나 클라이언트가 권한이 부족한 리소스에 접근하면 해당 리소스를 아예 숨기고 싶을 때 사용.

5xx Server Error

서버 오류, 서버가 정상 요청을 처리하지 못함. 서버의 문제이기 때문에 재시도하면 성공할 수도 있음.

  • 500 Internal Server Error: 애매하면 500 에러. 서버 내부 문제.
  • 503 Service Unavailable: 서버가 일시적인 과부하 또는 예정된 작업으로 잠시 요청을 처리할 수 없음. Retry-After 헤더 필드로 얼마 뒤에 복구되는지 보낼 수도 있음
profile
개발자

0개의 댓글