REST 계약

REST API 클라이언트 계약

NestJS 컨트롤러는 URI와 메서드를 선언하고 서비스는 실제 리소스 규칙을 처리해 REST 설계 원칙을 코드로 옮깁니다.

리소스

URI Nouns

동작 이름보다 users, posts 같은 명사형 리소스를 중심으로 경로를 설계합니다.

메서드

GET / POST / PATCH / DELETE

조회, 생성, 부분 수정, 삭제 의미를 HTTP 메서드에 맞춰 배치하면 API 의도가 읽힙니다.

상태 코드

201 / 400 / 404

성공과 실패를 본문 메시지만으로 표현하지 않고 상황에 맞는 HTTP 상태로 구분합니다.

Nest 구현

DTO + Service

컨트롤러는 DTO를 받고 서비스에 위임하며 응답 DTO로 외부에 공개할 필드만 정리합니다.