예외 필터 Nest는 어플리케이션 전반에서 처리되지 않은 모든 예외를 처리하는 예외 필터를 내장하고 있습니다. 어플리케이션 코드에서 예외가 처리되지 않았을 때, 이 예외 필터를 거쳐서 자동적으로 적절한 유저 친화적인 응답을 보냅니다. 예외 필터가 예외를 감지해서 유저에게 적절한 방식으로 응답을 보낸다는 이야기 같습니다. 기본적으로 HttpException(및 하위 클래스)의 예외를 처리하는 내장 전역 예외 필터에 의해 처리됩니다. 예외를 감지하지 못했을 때(HttpException 이나 HttpExpecption을 상속하는 클래스에서도 조차), 내장 예외 필터는 아래와 같은 JSON 응답을 기본적으로 만들어냅니다. { "statusCode": 500, "message": "Internal server e..
ROOT
📌 문제 서기 2012년! 드디어 2년간 수많은 국민들을 기다리게 한 게임 ACM Craft (Association of Construction Manager Craft)가 발매되었다. 이 게임은 지금까지 나온 게임들과는 다르게 ACM크래프트는 다이나믹한 게임 진행을 위해 건물을 짓는 순서가 정해져 있지 않다. 즉, 첫 번째 게임과 두 번째 게임이 건물을 짓는 순서가 다를 수도 있다. 매 게임시작 시 건물을 짓는 순서가 주어진다. 또한 모든 건물은 각각 건설을 시작하여 완성이 될 때까지 Delay가 존재한다. 위의 예시를 보자. 이번 게임에서는 다음과 같이 건설 순서 규칙이 주어졌다. 1번 건물의 건설이 완료된다면 2번과 3번의 건설을 시작할수 있다. (동시에 진행이 가능하다) 그리고 4번 건물을 짓기 ..
📌 문제 N명의 학생들을 키 순서대로 줄을 세우려고 한다. 각 학생의 키를 직접 재서 정렬하면 간단하겠지만, 마땅한 방법이 없어서 두 학생의 키를 비교하는 방법을 사용하기로 하였다. 그나마도 모든 학생들을 다 비교해 본 것이 아니고, 일부 학생들의 키만을 비교해 보았다. 일부 학생들의 키를 비교한 결과가 주어졌을 때, 줄을 세우는 프로그램을 작성하시오. 📌 입력 첫째 줄에 N(1 ≤ N ≤ 32,000), M(1 ≤ M ≤ 100,000)이 주어진다. M은 키를 비교한 회수이다. 다음 M개의 줄에는 키를 비교한 두 학생의 번호 A, B가 주어진다. 이는 학생 A가 학생 B의 앞에 서야 한다는 의미이다. 학생들의 번호는 1번부터 N번이다. 📌 출력 첫째 줄에 학생들을 앞에서부터 줄을 세운 결과를 출력한다...
미들웨어 미들웨어는 라우트 핸들러 이전에 사용되는 기능입니다. 미들웨어는 어플리케이션의 요청 응답 사이클에서 요청·응답 객체에 접근할 수 있으며, next() 미들웨어 기능을 사용할 수 있습니다. next 미들웨어 기능은 흔히 next라는 이름의 변수로 사용됩니다. Nest의 미들웨어는 기본적으로 익스프레스 미들웨어와 동일합니다. 아래의 설명은 익스프레스 공식문서가 설명하는 미들웨어의 기능입니다. 더보기 미들웨어 기능은 다음과 같은 일을 할 수 있습니다. 어떠한 코드든 실행합니다. 요청 및 응답 객체를 변경합니다. 요청 응답 사이클을 종료합니다. 스택에 쌓여있는 다음 미들웨어를 불러옵니다. 현재의 미들웨어가 요청-응답 사이클을 종료하지 않는다면, 반드시 next()를 사용하여 다음 미들웨어로 넘어갈 수 ..