서버와 프론트엔드에서 통신을 하다보니, 어떤 오류를 어떤 방식으로 처리할지가 성공과 실패인 200, 400 뿐만 아니라 다양한 숫자로 표현한다는 사실을 알 수 있었다.
또한, 지정된 규칙 외에도 각 프로젝트에서 추가적으로 오류 코드를 규칙을 생성해서 사용한다는 것을 확인하였다.
그래서 해당 내용을 내 프로젝트에도 적용하기 위해서 아래의 내용을 공부해보았다.
우선 기본적으로 크게 1XX, 2XX ~5XX 등 백의 자리 숫자에 따라 오류를 구분할 수 있다는 사실을 확인할 수 있었다.
2XX : Success
4XX : Client errors
5XX : Server errors
다음이 가장 많이 쓰이는 상태 코드이다.
위의 내용에서 좀 더 자세하게 나눈 자료를 가져와 보았다.
100 번대 상태코드
100 : 데이터의 일부를 서버가 받은 상태(처리중인 상태)
200 번대 상태코드 : 정상적인 처리 후 응답
200 : OK 에러없이 정상처리
204 : 정상처리 되었으나, 서버에 보낼 데이터가 없음
300 번대(다른 URL 처리)
301: 요청한 URL이 새로 변경되었음.
304: 기존의 데이터와 변경된것이 없음
400번대
400: 요청에 문제가 있기때문에 서버에서 인식할 수 없음
403: 서버에서 허락되지않음
404: 요청 URL을 찾을 수 없음
406: 전송 방식이 허락되지 않음(REST방식에서 자주 나타나는 상태코드)
500번대
500: 서버에서 처리시 문제가 발생(프로그램 내부적인 오류)
502: 게이트웨이, 프록시 상태의 문제(과부하)
503: 일시적인 서비스 중단 상태
504: 지정된 처리시간이 지나서 처리되지 못하는 경우
위처럼 주어진 코드는 status를 통해서 알맞은 번호와 연결시켜보았습니다.
그리고 code는 프로젝트 내부에서 지정하여 각 코드에 따라 프론트엔드에서 다른 처리를 진행할 수 있게 구성해보았습니다.