Volver a la página principal
viernes 3 enero 2025
13

Cómo Definir Rutas en NestJS

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.

Concepto de Rutas en NestJS

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.

Definir Rutas en un Controlador

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';
  }
}

Ejemplos de Rutas Personalizadas

Ruta con parámetros opcionales

@Get('search/:term?')
search(@Param('term') term?: string): string {
  return term ? `Buscando: ${term}` : 'Búsqueda vacía';
}

Ruta con query parameters

@Get('filter')
filter(@Query() query: any): string {
  return `Filtros aplicados: ${JSON.stringify(query)}`;
}

Referencia Oficial

Para más detalles, consulta la documentación oficial de NestJS.

Compartir:
Creado por:
Author photo

Jorge García

Fullstack developer