카테고리 없음

240701 TIL - 오십한번째 throw new error 에 status붙이기

8나지 2024. 7. 1. 11:16

 

 
주제1 throw new error 에 status붙이기
작성이유 참고하기 위해

 

문제상황

상황
왼 : 컨트롤러 / 오 : 서비스

 
해결방법 도움받았거나 정답 등 참고할 방법
해결방법 풀이 3layered architecture


service 에서는 res를 사용하지 못하기 때문에 관련 오류가 날 경우 에러를 던져준다.
이 때 throw new error 를 던지게 되면 에러 메세지만 내보내므로 


다른 파일에 custom에러 라는 파일을 만든다. 

//에러객체를 확장시킨 커스텀 에러를 만듬 : 메세지도, status도 받음
export default class customError extends Error {
constructor(message, status) {
super(message);
this.status = status;
}
}
그러면 커스텀 에러를 활용하여 status코드도 표현할 수 있음.


서비스에서 난 오류를 연결되어 있는 해당 컨트롤러의 catch가 잡아서 해당 오류를 내보냄.
그 외