Server/NodeJS & NestJS

NestJS) try-catch Error handling with TS

Juzdalua 2025. 7. 4. 11:52

기본적인 트라이 캐치문 사용이다.

try {
    
  } catch (error) {
    
  }

 

TS에서 에러 타입지정을 하면 에러가 발생한다.

try {
    
  } catch (error: Error) {
    
  }

 

interface Error로 사용하려 했지만,

캐치문에서 네스트 프레임워크는 에러를 unknown으로 지정하라고 강요한다.

항상 에러가 아닌, 특정 객체가 올 수 있기 때문.

ex) 
throw "error string";
throw 123;
throw {};
throw new Error();

 

그래서 개발자가 캐치문에서 에러를 에러로 강제 지정하고 메세지를 출력하려면 아래와 같이 사용해야 한다.

try {
      
} catch (error) {
  console.error((error as Error).message);
}