Programming/Nest.js

[Nest.js] API 만들어 보기(유저 등록)

리버김 2022. 12. 19.

구조 설계

Nest.js가 client 요청을 받은 후의 과정

@Controller -> @Service -> Database(Repository)

CLI를 이용해 module, controller, service 생성

*Service: Controller가 사용자가 HTTP 요청을 통해 사용자가 보낸 데이터를 처리하면서 비즈니스 로직을 위임하는 기능. Provider의 하나로, Provider에는 services, repositories, factories, helpers 등이 있다. Provider는 @Injectable() 데코레이터가 달린 클래스인데, Dependency Injection이 가능하도록 한다.

user.module.ts

import { Module } from '@nestjs/common';
import { UserController } from './user.controller';
import { UserService } from './user.service';

@Module({
  controllers: [UserController],
  providers: [UserService],
})
export class UserModule {}

 

Hello World!를 출력하는 API 만들기

user.service.ts

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

@Injectable()
export class UserService {
  getHelloWorld(): string {
    return 'Hello World!!';
  }
}

user.controller.ts

import { Controller, Get } from '@nestjs/common';
import { UserService } from './user.service';

@Controller('user')
export class UserController {
  constructor(private readonly userService: UserService) {}

  @Get() //경로를 설정하지 않으면 "user/" 경로로 설정이 된다.
  getHelloWorld(): string {
    return this.userService.getHelloWorld();
  }
}

 

'Programming > Nest.js' 카테고리의 다른 글

[Nest.js 기초] 설치와 controller  (0) 2022.12.16
Nest.js란?  (0) 2022.12.16

댓글