4 minutos de lectura
0
El versionado de una API permite evolucionar tu backend sin romper clientes que consumen endpoints antiguos. NestJS ofrece soporte nativo para varios esquemas de versionado, como URI, Encabezado (header) y Media Type (Accept header). En esta guía:
Si no lo tienes instalado aún, instala el CLI global de NestJS:
Genera un nuevo proyecto:
Instala dependencias básicas (opcional):
Abre src/main.ts
y configura lo siguiente:
URI
/ HEADER
/ MEDIA_TYPE
/ CUSTOM
v
)Para mantener claridad, organiza módulos, controladores y servicios según la versión:
Genera módulo, servicio y controlador:
src/api/v1/products/products.controller.ts
:
src/api/v1/products/products.service.ts
:
Genera módulo, servicio y controlador:
src/api/v2/products/products.controller.t
s:
src/api/v2/products/products.service.ts
:
Ahora al llamar:
GET /api/v1/products
→ devuelve [{ id: 1, name: 'Product V1' }]
GET /api/v2/products
→ devuelve [{ id: 1, name: 'Product V2', description: 'Added in V2' }]
El cliente incluirá: X-API-Version: 2
¡Con esto ya tienes tu API versionada apoyándote en las capacidades nativas de NestJS! Ahora podrás evolucionar tus endpoints sin miedo a romper integraciones existentes.
Si lo deseas, puedes apoyarme con una donación voluntaria. Tu aporte me permite dedicar más tiempo a investigar, escribir y mejorar la calidad del contenido que publico. ¡Muchísimas gracias por considerar impulsar este proyecto!
Compartir en: