REST 구현 경로

Controller/DTO/Service 흐름

URL과 HTTP 메서드는 Controller에서 받고, Body와 Param은 DTO와 ValidationPipe를 거쳐 Service의 비즈니스 로직으로 전달됩니다.

구현 순서

users resource
1

모듈 생성

users module, controller, service를 만들고 AppModule에 연결합니다.

2

DTO 검증

CreateUserDto와 UpdateUserDto로 요청 body의 모양과 유효성을 고정합니다.

3

라우트 매핑

@Get, @Post, @Patch, @Delete로 리소스 작업을 명시적으로 나눕니다.

4

서비스 호출

Controller는 요청 해석에 집중하고 실제 조회, 생성, 수정은 Service에 맡깁니다.

Request Controller DTO Service Response

성공 응답

GET은 200, POST는 201처럼 작업 결과에 맞는 상태 코드를 확인합니다.

검증 실패

잘못된 body는 ValidationPipe가 400 응답으로 빠르게 차단합니다.

리소스 없음

존재하지 않는 id는 NotFoundException으로 404 흐름을 고정합니다.

리소스 계약 확인

REST API 구현은 데코레이터를 많이 쓰는 일이 아니라, 요청 입력과 응답 규칙을 같은 리소스 모델 안에서 일관되게 유지하는 일입니다.