100: 요청을 받았으며 프로세스를 계속 처리하고 있는 중
200: 요청을 성공적으로 처리
201: 새로운 리소스가 생성됨을 알림. 주로 post요청, 일부 put 요청 이후에 따라옴
put요청은 값이 있다면 업데이트, 없다면 생성하는 역할을 함. 이러한 속성 때문에 일부 put요청에 201이 사용됨
202: 요청을 수신했지만 처리가 완료되지 않은 경우를 말함.
예를 들면 요청 접수 후, 서버에서 1시간 뒤에 배치 프로세스(?)가 요청을 처리하는 상황에 사용됨.
300: 요청 완료를 위해 웹 브라우저에서 추가 작업 조치가 필요함을 알림 (== 리다이렉션의 개념과 일치)
웹 브라우저는 3xx 응답의 결과에 Location 헤더가 있으면, Location 위치로 자동 이동됨
ex)
1. /coke URL이 /zero-coke URL로 변경되었음
2. 변경이 되었는데 기존의 coke URL로 요청을 보낼경우
3. 변경된 리소스 주소를 담은 Location 헤더를 300번대 응답 결과로 받음
4. 결과 웹 브라우저는 Location 헤더에 담긴 리소스 주소로 자동 리다이렉트를 하게 됨.
리다이렉션의 경우
영구적인 리다이렉션(301, 308) - 특정 리소스의 URI가 영구적으로 이동됨
일시적인 리다이렉션(302, 303) - 일시작으로 URI가 변경됨
특수한 리다이렉션(304) - 결과 대신 캐시를 사용(캐시를 활용한 리다이렉션)
304 - 똑같은 리소스를 요청했을 때 새롭게 다운로드를 하지 않고, 캐시에 저장되어 있는 똑같은 리소스를 사용하는 것을 말함.
이런식으로 사용함으로서 웹브라우저(클라이언트)가 계속적인 다운로드를 하지 않아 쾌적한 웹브라우저를 제공 할 수 있음.
4xx: 클라이언트 오류, 요청의 문법이 잘못되었거나 API 스팩에 맞지 않게 요청한 경우 발생
400: 잘못된 문법이나 메시지를 요청해서 서버가 이해할 수 없는 경우 발생
401: 클라이언트가 해당 리소스에 대한 인증이 필요한 경우 발생함(로그인이 필요한데, 로그인 하지 않은 경우)
403: 서버가 요청을 이해했지만 승인을 거부한 경우 발생.
예를 들어 인증(로그인)은 되었지만 접근 권한이 부족한 경우(인가)가 있을 수 있음.
404: 요청 리소스를 찾을 수 없는 경우 발생.
5xx: 서버 오류
500: 서버 내부 문제로 오류가 발생
502: 서버간의 유효하지 않은 응답을 받은 경우 발생.
503 서버가 일시적으로 요청을 처리할 준비가 되지 않았을 때 발생함.
유지보구를 위한 작동이 중단되었거나, 서버에 잠시 과부화가 걸렸는 경우. - 따라서 503은 일시적인 오류이므로 다시 서버가 요청을 처리할 수 있음.
'📖혼자공부하는자바' 카테고리의 다른 글
Chapter13-2 LIFO와 FIFO 컬렉션 (0) | 2022.12.24 |
---|---|
Chapter10-2 예외 처리 (1) | 2022.12.20 |
Chapter 07-3 추상 클래스, 추상 메소드 (0) | 2022.12.10 |
Chapter 06-6-1 패키지와 접근 제한자 (0) | 2022.12.02 |
Chapter 06-4-2 메소드 호출 (0) | 2022.11.29 |