Entradas

49. Pipes Globales - A nivel de Aplicación

  Pipes Globales en NestJS: Validación a Nivel de Aplicación En NestJS, los Pipes son una herramienta poderosa para transformar y validar datos. En este post, exploraremos cómo implementar Pipes a nivel global en nuestra aplicación, lo que nos permite centralizar la validación y mantener un código más limpio y consistente. Estructura del Proyecto Antes de comenzar, veamos la estructura de nuestro proyecto: Copy Download src/ │ ├── cars/ │ ├── dto/ │ │ ├── create-car.dto.ts │ │ └── update-car.dto.ts │ ├── interfaces/ │ │ └── car.interface.ts │ ├── cars.controller.ts │ ├── cars.module.ts │ ├── cars.service.ts │ └── constants/ │ └── car.constants.ts │ ├── common/ │ ├── pipes/ │ │ └── validation.pipe.ts │ └── filters/ │ └── http-exception.filter.ts │ ├── app.module.ts ├── app.controller.ts ├── app.service.ts └── main.ts Antes: Validación por Controlador Inicialmente, teníamos que aplicar el  ValidationPipe  en cada método del contro...

48. ValidationPipe - Class Validator y Class Transformer

  Validación de Datos en NestJS con ValidationPipe, Class-Validator y Class-Transformer Cuando desarrollamos APIs, una de las tareas más comunes -y a veces tediosas- es validar que los datos que recibimos en las peticiones cumplan con ciertos estándares. ¿No sería genial tener una forma sencilla y automatizada de hacer esto? En NestJS, podemos lograrlo con el  ValidationPipe  junto con las librerías  class-validator  y  class-transformer . Antes: Validación Manual Originalmente, nuestro controlador de autos ( cars.controller.ts ) aceptaba cualquier dato sin validación: typescript Copy Download import { Controller , Get , Param , Post , Body , Patch , Delete , ParseIntPipe } from '@nestjs/common' ; import { CarsService } from './cars.service' ; import { CreateCarDto } from './dto/create-car.dto' ; @ Controller ( 'cars' ) export class CarsController { constructor ( private readonly carsService : CarsService ) { } @ Get...