Definir rutas en NestJS es esencial para construir aplicaciones web con esta plataforma basada en Node.js. Las rutas permiten manejar solicitudes HTTP específicas, vinculando controladores y servicios para organizar la lógica de la aplicación.
En NestJS, las rutas se definen a través de controladores (controllers). Estos controladores utilizan decoradores para especificar los métodos HTTP (GET, POST, PUT, DELETE) y las rutas correspondientes. Esto simplifica la gestión y estructura de las aplicaciones.
Para definir rutas en NestJS, primero necesitas crear un controlador. Aquí se utiliza el decorador @Controller
para establecer el prefijo de la ruta, y los decoradores como @Get
, @Post
, entre otros, para especificar los endpoints.
import { Controller, Get, Post, Param, Body } from '@nestjs/common';
@Controller('users') // Prefijo de la ruta: /users
export class UsersController {
@Get() // Maneja solicitudes GET a /users
findAll(): string {
return 'Lista de usuarios';
}
@Get(':id') // Maneja solicitudes GET a /users/:id
findOne(@Param('id') id: string): string {
return `Usuario con ID: ${id}`;
}
@Post() // Maneja solicitudes POST a /users
create(@Body() createUserDto: any): string {
return 'Usuario creado';
}
}
@Get('search/:term?')
search(@Param('term') term?: string): string {
return term ? `Buscando: ${term}` : 'Búsqueda vacía';
}
@Get('filter')
filter(@Query() query: any): string {
return `Filtros aplicados: ${JSON.stringify(query)}`;
}
Para más detalles, consulta la documentación oficial de NestJS.
Jorge García
Fullstack developer