카테고리 없음
Node.js Promise 미들웨어, 비동기 에러 핸들링 완벽 가이드 (Express 5.x 포함)
By HKEBI | 2025. 10. 18. 13:56
Node.js와 Express로 API 서버를 구축하다 보면 누구나 한 번쯤은 아찔한 경험을 합니다. async/await를 사용해 컨트롤러 로직을 깔끔하게 작성했는데, 정작 비동기 함수 내부에서 발생한 에러가 서버 전체를 멈춰버리는 현상이죠. 분명 에러 핸들링 미들웨어도 등록했는데 말입니다.왜 이런 일이 발생할까요? Express의 기본 에러 핸들링 메커니즘은 동기적으로 발생한 에러만 감지할 수 있기 때문입니다. async 함수가 반환하는 Promise가 reject되었을 때 발생하는 에러는 Express의 이벤트 루프에서 '떠다니는' 상태가 되어, 우리가 설정한 에러 핸들러까지 도달하지 못하고 프로세스를 중단시킵니다.이 문제를 해결하기 위해 모든 async 컨트롤러마다 try...catch 블록으로 ..