NestJS : Controller 컨트롤러란?

JooSehyun·2024년 9월 25일
0

[Study]

목록 보기
46/56
post-thumbnail

Controller 란?

컨트롤러는 들어오는 요청을 처리하고 클라이언트에 응답을 반환합니다.

컨트롤러는 @Controller로 데코레이터로 클래스를 데코레이션하여 정의됩니다.

@Controller('/boards')
export class BoardsController {}

데코레이터는 인자를 Controller에 의해서 처리되는 경로로 받습니다.


Handler 란?

핸들러는 @Get , @Post , @Delete 등과 같은 데코레이터로 장식 된 컨트롤러 클래스 내의 단순한 메서드입니다.

@Controller('/boards')
export class BoardsController {
	@Get()
    getBoards(): string {
    	return 'This action returns all boards';
    }
}...

Controller 생성하기

Controllers 생성하기 명령어

nest g controller '컨트롤러 이름' --no-spec

  • --no-spec : 테스트를 위한 소스 코드생성을 하지 않는다는 의미입니다.

board.module에 컨트롤러가 추가가 됩니다.

// board.module.ts

import { Module } from '@nestjs/common';
import { BoardController } from './board.controller';

@Module({
  	controllers: [BoardController],  🔵 추가됨 🔵
})
export class BoardModule {}
// board.controller.ts

import { Controller } from '@nestjs/common';

@Controller('board')
export class BoardController {}

CLI로 명령어 입력시 Controller 만드는 순서

  1. cli는 먼저 boards(만든 모듈, 컨트롤러) 폴더를 찾습니다.
  2. boards 폴더 안에 controller 파일 생성
  3. boards 폴더 안에 module 파일 찾기
  4. module 파일 안에 controller 넣어주기

출처: JhonAhn님의 유튜브 강의 NestJS를 참고하여 작성하였습니다.

0개의 댓글