Community

express로 service 단에서 예외처리 방법

프로젝트 간단한 설명 저희 회사 프로젝트는 프론트엔드 Rect, 백엔드 Spring 으로 되어 있고 보안 회사여서 프론트 파트는 모노레포로 구성 되어있습니다. React와 NodeJS 가 같은 포트를 사용해서 모든 요청이 NodeJS에서 처리 됩니다. NodeJS는 React와 Spring의 중간 단계라고 생각하시면 되고 구성은 Router(프론트에서 받은 요청, 지금은 Controller 분리한 상황), Api(백엔드 요청 로직)으로 구성 되어있습니다. 궁금한 부분 다른 분들의 프로젝트를 봤을 때 Controller에서는 try~catch로 오류를 체크하는데 Service에서는 Promise 객체를 반환만 할 뿐 체크하는 로직은 없었습니다. 여기 프로젝트에서 Api와 Service의 의미가 다르지만 Promise 그대로 반환하면 return 타입이 Promise로 설정 될 수 밖에 없습니다.(타입 설정 불가) 그리고 Controller에서 데이터를 검증해야 하고 res.data로 받아야 될 수 밖에 없습니다. 이렇게 하면 body와 header 등 응답에 필요한 부분을 받을 수 있지만 과연 이게 맞는 것인지 의문이 들어서 같이 나누고자 글을 남깁니다. 정리 1. Api(NodeJS에서 Spring으로 요청하는 로직)에서 Controller와 동일하게 예외 처리해야 되는지 2. Api에서 검증을 수행하고 res.data를 던져도 되는 부분인지 응답을 어떤 형식으로 처리하는지(만약 header의 값이 필요하면 같이 객체로 묶어서 return 해야 함) 코드 예시(해당 코드는 회사와 관련 없으며 이해를 위한 코드 입니다)

Loading...

알림

알림이 없습니다