시작은 NestJS에서 제공하는 멋진 CLI 명령어로 진행한다. CLI로 어떤 nestJS 처리를 할 수 있는지 살펴보려면 터미널에 간단하게 nest 를 입력하면 된다.

특정 주소로 요청을 받아서 내부의 함수(응답을 보내도록 처리하는)를 처리하게 하는 컨트롤러를 만들어보자. 위의 사진에서 generate|g 라고 하는 부분을 통해서 Nest Element를 생성할 수 있다고 한다. 그리고 표로 제시된 부분에 controller가 있다.

// user rest api 만들기
nest g controller
> user

이렇게 cli 명령어를 작성하면 어떤 컨트롤러를 작성할 것인지 물어본다. 그때 입력하는 이름이 app.module에 등록되고, 보통 주소들의 엔트리 포인트가 된다. Get, Post, Delete, Put, Patch 와 같은 Restful한 부수 함수들을 불러와서 컨트롤러 로직을 쉽게 구성할 수 있다.

@Controller('user') // localhost:3000/user
export class UserController {
	@Get()
	getAllUser() {
		return `this api returns all of user data`
	}
}

nestJS로 컨트롤러 함수를 구성할 때 신경써야 하는 부분은 요청을 보내야 등록한 함수가 실행된다는 사실이다. nestJS는 강력하고도 편한 기능을 갖추고 있지만 요청하지 않으면 그 유용함을 갖출 수 없다.