티스토리 뷰
Nest의 컨트롤러는 MVC 패턴에서 말하는 컨트롤러와 같습니다.
컨트롤러의 목적은 애플리케이션에 대한 특정 요청을 수신하는 것입니다. 라우팅 메커니즘은 어떤 컨트롤러가 어떤 요청을 수신하는지 제어합니다. 각 컨트롤러에는 두 개 이상의 경로가 있는 경우가 많고, 다른 경로는 다른 작업을 수행할 수 있습니다.
Nest는 모든 표준 HTTP 메서드에 대한 데코레이터를 제공합다:
@Get(), @Post(), @Put(), @Delete(), @Patch(), @Options(), @Head().
또한 @All()은 이 모든 것을 처리하는 엔드포인트를 정의합니다.
import { Controller, Get, Post } from '@nestjs/common';
@Controller('Dog')
export class DogsController {
@Post()
create(): string {
return 'This action adds a new dog';
}
@Get()
findAll(): string {
return 'This action returns all dogs';
}
}
패턴 기반 경로
예를 들어, 별표는 와일드카드로 사용되며 모든 문자 조합과 일치합니다.
@Get('ab*cd')
findAll() {
return 'This route uses a wildcard';
}
상태 코드
@HttpCode(...) 데코레이터를 추가하면 이러한 동작을 쉽게 변경할 수 있습니다.
@Post()
@HttpCode(201)
create() {
return 'Something';
}
헤더
사용자 지정 응답 헤더를 지정하려면 @Header() 데코레이터나 라이브러리별 응답 객체를 사용하고 res.header()를 직접 호출할 수 있습니다.
@Post()
@Header('Cache-Control', 'no-store')
create() {
return 'This action Something';
}
Redirection
응답을 특정 URL로 리디렉션하려면 @Redirect() 데코레이터나 라이브러리별 응답 객체를 사용할 수 있습니다(그리고 res.redirect()를 직접 호출).
@Redirect()는 url과 statusCode라는 두 개의 인수를 사용하며, 둘 다 선택 사항입니다. 생략하면 statusCode의 기본값은 302(발견됨)입니다.
컨트롤러는 항상 모듈에 속하므로 @Module() 내에 컨트롤러 배열을 포함합니다.
import { Module } from '@nestjs/common';
import { SomeController } from './some/some.controller';
@Module({
controllers: [SomeController],
})
export class AppModule {}
'Nest' 카테고리의 다른 글
#6 Nest Gateway (0) | 2024.12.06 |
---|---|
#5 Nest 모듈 (Module) (1) | 2024.12.05 |
#4 Nest 커스텀 프로바이더 (0) | 2024.12.05 |
#3 Nest 프로바이더(Provider) (0) | 2024.12.04 |
#1 Nest 와 데코레이터(Decorator) (0) | 2024.12.04 |
- Total
- Today
- Yesterday
- 유니티 캐릭터
- Unity
- 유니티
- 리액트
- 유니티 실습
- 함수
- 유니티 플레이어 캐릭터
- Linux
- JVM
- nest
- nest js
- Kotlin
- JavaScript
- 리눅스
- Transform
- 자바
- inheritance
- 상속
- Java
- nestjs socket connection
- react
- 오버라이딩
- Unity2D
- 유니티 개발
- 자바스크립트
- 유니티 게임 개발
- 유니티 게임개발
- 코틀린
- object
- 클래스
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |