MERN - Express 오류 처리

2023. 9. 17. 22:43MERN

Express.js와 같은 웹 프레임워크에서는 오류 핸들링을 위한 메커니즘을 제공합니다.
Express.js에서 오류 처리는 다음과 같이 이루어집니다:

 

미들웨어 체인에서 오류 처리:

Express.js 미들웨어 함수 중에서 오류를 처리하는 미들웨어를 정의할 수 있습니다. 이러한 미들웨어는 next 함수의 인자로 오류 객체를 받을 수 있습니다. 예를 들어:

app.use((err, req, res, next) => {
  // 오류 처리 코드
  console.error(err);
  res.status(500).send('서버 오류 발생');
});



위의 미들웨어는 다른 미들웨어나 라우트 핸들러에서 오류가 발생할 때 호출됩니다. 오류가 발생하면 해당 미들웨어로 전달되며 오류 처리 및 응답을 수행할 수 있습니다.

에러 핸들러 미들웨어 등록:

Express.js에서는 오류 핸들링을 위한 전용 에러 핸들러 미들웨어를 등록할 수도 있습니다. 이렇게 하면 오류가 발생했을 때 특정 미들웨어가 호출됩니다. 예를 들어:

app.use((err, req, res, next) => {
  // 오류 처리 코드
  console.error(err);
  res.status(500).send('서버 오류 발생');
});


이러한 에러 핸들러 미들웨어는 일반적으로 미들웨어 체인의 맨 끝에 등록되며, 다른 미들웨어에서 발생한 오류를 처리합니다.

HTTP 요청 및 응답 처리 중에 발생하는 오류는 여러 가지 원인으로 인해 발생할 수 있으며, 예를 들어 라우팅 오류, 데이터베이스 연결 오류, 인증 오류 등이 있을 수 있습니다. Express.js를 사용하면 이러한 다양한 오류 상황을 적절하게 처리하여 클라이언트에게 적절한 오류 응답을 제공할 수 있습니다.

'MERN' 카테고리의 다른 글

MongoDB 연결, 시작2  (0) 2024.01.10
MongoDB란 (feat. NoSQL, SQL)  (0) 2024.01.03
MERN 참고 공식 사이트  (0) 2023.09.17
BodyParser  (0) 2023.09.17
React - useEffect  (0) 2023.06.25