Nest.js는 기본적으로 컨트롤러 - 프로바이더 - 모듈 구조로 애플리케이션을 구성한다. 클라이언트로부터 HTTP 요청이 nest 서버에 들어오면 라우팅 메커니즘에 따라 알맞은 컨트롤러로 요청이 분배된다. 컨트롤러는 HTTP 요청을 받아서 메소드를 수행하고 결과를
컨트롤러의 목적은 애플리케이션을 위한 특정 요청들을 받는 것이다.클라이언트로부터 들어온 HTTP 요청들은 라우팅 메커니즘에 따라서 알맞은 컨트롤러로 분배된다.Nest에서는 @Controller, @Get, @Post 등 데코레이터를 이용해서 컨트롤러를 구성할 수 있다.