पाठ 31 / 34
Swagger से API Documentation
@nestjs/swagger, decorators और Nest CLI plugin से NestJS API के लिए interactive OpenAPI docs बनाएँ।
Swagger सेट करें
@nestjs/swagger आपके controllers और DTOs से OpenAPI document बनाता है और interactive UI परोसता है।
import { SwaggerModule, DocumentBuilder } from '@nestjs/swagger';
async function bootstrap() {
const app = await NestFactory.create(AppModule);
const config = new DocumentBuilder()
.setTitle('Users API')
.setVersion('1.0')
.addBearerAuth()
.build();
SwaggerModule.setup('docs', app, SwaggerModule.createDocument(app, config));
await app.listen(3000);
}Decorators से DTO properties और operations का वर्णन करें।
export class CreateUserDto {
@ApiProperty({ example: 'ada@example.com' })
@IsEmail()
email: string;
}
@ApiTags('users')
@Controller('users')
export class UsersController {
@Post()
@ApiCreatedResponse({ description: 'User created' })
create(@Body() dto: CreateUserDto) {}
}अधिकांश DTO metadata अपने-आप पाने के लिए Nest CLI Swagger plugin चालू करें, और docs UI केवल non-production environments में दिखाएँ।