본문 바로가기

Back-End

Express.js에서 에러 처리하기

반응형

기본 에러 처리

express에서는 자동으로 에러 코드 및 에러 정보를 클라이언트로 응답해준다.

 

에러 처리 - 방법1

라우터에서 에러가 발생하면, express가 알아서 클라이언트로 500 에러 코드와 에러 메시지를 전달한다.

app.get('/example', (req, res) => {
	throw new Error('에러 발생');
});

 

에러 처리 - 방법2

콜백 인수 next를 이용하여 에러 발생 코드와 정보를 전달한다.

app.get('/example', (req, res, next) => {
	next(new Error('에러 발생'));
});

 

 

 

에러 처리 핸들러 미들웨어 함수로 에러 처리

에러 처리 핸들러 미들웨어 함수를 이용하면,

앱에서 발생한 모든 에러를 한군데서 처리할 수 있다.

주의해야 할 사항은, 에러 처리 미들웨어 함수는 err, req, res, next 4개의 매개변수를 사용하는데,

다른 app.use() 및 라우트 정의 후 마지막으로 정의해주어야 한다!

app.use('/example', (req, res, next) => {
	next(new Error('에러 발생'));
});

app.use((err, req, res, next) => {
	console.error(err);
	res.status(500).json({ statusCode: res.statusCode, errMessage: err.message });
});
반응형

'Back-End' 카테고리의 다른 글

Express.js에서 정적 파일 제공하기  (0) 2023.07.25
[Node.js] 라우트 처리하기  (0) 2023.07.25
Node.js + Express + TypeScript  (0) 2023.07.22
[Nest.js] NestJS가 뭐야?: NodeJS 프레임워크 공부하기  (0) 2022.03.08
redis란?  (0) 2022.03.08