반응형
OpenAPI 데코레이터 종류 모음
사용 가능한 모든 OpenAPI 데코레이터는 핵심 데코레이터와 구별하기 위해 Api 접두사가 있다.
import { IsString } from 'class-validator'
import { ApiProperty } from '@nestjs/swagger'
...
@IsString()
@ApiProperty()
name: string;
...
@IsString() = 문자열(string)인지 판별하는 유효성 검사 데코레이터 (validation)로 class-validator에서 가져와서 사용할 수 있다.
@ApiProperty() = 데코레이터는 nestjs/swagger에 자체 내장되어있는 데코레이터이고 type 인자로 해당 데코레이터로 데코레이팅 된 클래스를 넘겨주면 해당 정보를 swagger에 표시한다.
아래는 데코레이터가 적용될 수 있는 수준(Method, Controller, Model) 지정과 OpenAPI 데코레이터의 전체 목록이다.
@ApiBasicAuth() | Method / Controller |
@ApiBearerAuth() | Method / Controller |
@ApiBody() | Method |
@ApiConsumes() | Method / Controller |
@ApiCookieAuth() | Method / Controller |
@ApiExcludeController() | Controller |
@ApiExcludeEndpoint() | Method |
@ApiExtension() | Method |
@ApiExtraModels() | Method / Controller |
@ApiHeader() | Method / Controller |
@ApiHideProperty() | Model |
@ApiOAuth2() | Method / Controller |
@ApiOperation() | Method |
@ApiParam() | Method |
@ApiProduces() | Method / Controller |
@ApiProperty() | Model |
@ApiPropertyOptional() | Model |
@ApiQuery() | Method |
@ApiResponse() | Method / Controller |
@ApiSecurity() | Method / Controller |
@ApiTags() | Method / Controller |
반응형
'개발 프레임워크 > NestJS' 카테고리의 다른 글
[NestJS] Parameters(매개변수)_Swagger (0) | 2023.02.08 |
---|---|
[NestJS] Security(보안) (0) | 2023.02.07 |
[NestJS] OpenAPI (0) | 2023.02.07 |
[NestJS] 유효성 검증(Validation by class-validator) (0) | 2023.02.06 |
[NestJS] Swagger(스웨거)란? (0) | 2023.02.06 |
댓글