NestJS에서 지원하는 예외 처리기

NestJS는 서버 측 애플리케이션을 구축하는 강력하고 유연한 방법을 제공하는 널리 사용되는 Node.js 프레임워크입니다.

NestJS의 주요 기능 중 하나는 개발자가 애플리케이션의 런타임 중에 발생할 수 있는 오류 및 예외를 적절하게 처리할 수 있도록 하는 예외 처리 메커니즘입니다.

NestJS는 개발자가 다양한 유형의 오류를 처리하는 데 사용할 수 있는 몇 가지 기본 제공 예외를 제공합니다.

이러한 예외는 HTTP 예외와 비HTTP 예외의 두 가지 유형으로 나뉩니다.

HTTP 예외: HTTP 예외는 HTTP 요청 및 응답과 관련된 오류를 처리하는 데 사용됩니다.

NestJS는 다음 HTTP 예외를 발생시킵니다.

  1. BadRequestException: 이 예외는 클라이언트가 잘못된 요청을 보낼 때 발생합니다.

  2. UnauthorizedException: 이 예외는 클라이언트가 요청된 리소스에 액세스할 수 있는 권한이 없을 때 발생합니다.

  3. NotFoundException: 이 예외는 요청한 리소스를 찾을 수 없을 때 발생합니다.

  4. ForbiddenException: 이 예외는 클라이언트가 요청된 리소스에 액세스할 수 있는 충분한 권한이 없을 때 발생합니다.

  5. MethodNotAllowedException: 이 예외는 클라이언트가 지원되지 않는 HTTP 메서드를 사용하여 요청을 보낼 때 발생합니다.

  6. NotAcceptableException: 이 예외는 클라이언트가 지원되지 않는 미디어 유형으로 요청을 보낼 때 발생합니다.

  7. RequestTimeoutException: 이 예외는 클라이언트 요청을 완료하는 데 너무 오래 걸리는 경우 발생합니다.

  8. ConflictException: 이 예외는 요청된 작업이 기존 리소스와 충돌할 때 발생합니다.

  9. GoneException: 이 예외는 요청된 리소스를 더 이상 사용할 수 없을 때 발생합니다.

  10. PayloadTooLargeException: 이 예외는 클라이언트가 서버의 크기 제한을 초과하는 페이로드가 있는 요청을 보낼 때 발생합니다.

  11. UnsupportedMediaTypeException: 이 예외는 클라이언트가 지원되지 않는 미디어 유형으로 요청을 보낼 때 발생합니다.

  12. UnprocessableEntityException: 이 예외는 클라이언트가 서버가 처리할 수 없는 페이로드가 포함된 요청을 보낼 때 발생합니다.

  13. InternalServerErrorException: 이 예외는 서버에 예기치 않은 오류가 발생했을 때 발생합니다.

  14. NotImplementedException: 이 예외는 기능이 아직 구현되지 않은 경우 발생합니다.

  15. BadGatewayException: 이 예외는 게이트웨이 또는 프록시 역할을 하는 서버가 업스트림 서버에서 잘못된 응답을 받을 때 발생합니다.

  16. ServiceUnavailableException: 이 예외는 서버를 사용할 수 없거나 과부하 상태일 때 발생합니다.

비 HTTP 예외: 비 HTTP 예외는 HTTP 요청 및 응답과 관련되지 않은 오류를 처리하는 데 사용됩니다.

NestJS는 다음과 같은 HTTP가 아닌 예외를 발생시킵니다.

  1. NotFoundException: 이 예외는 요청한 리소스를 찾을 수 없을 때 발생합니다.

  2. BadRequestException: 이 예외는 클라이언트가 잘못된 요청을 보낼 때 발생합니다.

  3. UnauthorizedException: 이 예외는 클라이언트가 특정 작업을 수행할 수 있는 권한이 없을 때 발생합니다.

  4. ForbiddenException: 이 예외는 클라이언트에 특정 작업을 수행할 수 있는 권한이 없을 때 발생합니다.

  5. NotAcceptableException: 이 예외는 서버가 요청된 형식으로 응답을 제공할 수 없을 때 발생합니다.

  6. InternalServerErrorException: 이 예외는 서버에 예기치 않은 오류가 발생했을 때 발생합니다.

  7. NotImplementedException: 이 예외는 기능이 아직 구현되지 않은 경우 발생합니다.

  8. UnprocessableEntityException: 이 예외는 잘못된 데이터로 인해 서버에서 요청을 처리할 수 없을 때 발생합니다.

  9. GatewayTimeoutException: 이 예외는 게이트웨이 또는 프록시가 업스트림 서버의 응답을 기다리는 시간이 초과될 때 발생합니다.