©2024 Escuela Tecnologías de la Información S.L. Todos los derechos reservados.
Curso de desarrollo de API REST con Nest Framework
Desarrollo de un proyecto completo de API REST con el framework NestJS para Node
Material disponible
Nest Framework es el marco de desarrollo más avanzado para NodeJS, que gustará a los entusiastas del diseño orientado a objetos, la arquitectura de las aplicaciones y las buenas prácticas. Es un framework muy inspirado en Angular, por lo que los desarrolladores frontend que conozcan esa tecnología se sentirán muy cómodos al trabajar con Nest.
Con Nest podemos hacer todo tipo de aplicaciones backend, incluso aplicaciones de propósito general. Sin embargo, lo más común es realizar el desarrollo de servicios web, es decir, APIs con el modelo API REST o GraphQL. Este curso de desarrollo de APIs con NestJS nos mostrará cómo conseguirlo.
Qué aprenderé en el Curso de desarrollo de API REST con Nest Framework
Objetivos del curso
Por qué debes aprender Desarrollo de API REST con Nest Framework
Qué tengo que saber
Para poder aprovechar este curso es necesario tener conocimientos sólidos de Javascript y sería deseable conocer también TypeScript. Además, sería aconsejable tener una idea inicial de Nest y las piezas fundamentales de su arquitectura. Aunque en el curso se puedan explicar conceptos básicos, se pasará muy rápidamente por ellos, por lo que sería interesante que el estudiante haya hecho antes el Curso de Fundamentos de Nest.
Clases y contenidos
En esta clase en abierto empezamos con la parte práctica y nos adentraremos en las piezas más fundamentales de las aplicaciones desarrolladas con Nest.
En esta clase vamos a ver cómo iniciar el proyecto de API Rest que vamos a realizar durante el curso. Durante la clase explicaremos los componentes principales de este proyecto, así como el modelo de dominio. Luego trabajaremos sobre el primer recurso, "proyects" que nos servirá para aprender las bases sobre controladores y servicios aplicadas a un proyecto real.
En esta clase evolucionamos el recurso Project, que hasta ahora estaba desarrollado sin base de datos. Agregamos decoradores de Swagger para documentarlo y Mapped types para reutilizar el DTO y luego nos centramos en añadir TypeORM al servicio para trabajar con la base de datos. Finalizamos mostrando cómo hacer recursos con el CLI y un comando que consigue realizar todos los archivos necesarios de una vez.
En esta clase realizamos algunos ajustes en el proyecto del API REST con Nest y sobre la documentación con Swagger. Luego implementamos toda la configuración del proyecto con variables de entorno. Por último nos metemos de lleno en el tema de las relaciones entre las entidades del proyecto, configurando TypeORM y mejorando los servicios para trabajar con estas relaciones.
En esta clase comenzaremos viendo lo que son las migraciones y cómo podemos crearlas para actualizar la base de datos una vez que el proyecto está en producción. Luego nos metemos de lleno en todo lo que es la autenticación de usuarios en Nest, creando la entidad de usuario y los endpoints para hacer login.
En esta clase veremos cómo es todo el flujo de tokens de autenticación con JWT. Veremos cómo se genera el token y cómo se consulta el token en todas las rutas que requieren autenticación. Crearemos nuevas rutas en el API que gestionan todo el flujo de verificación de usuarios mediante sus JWT.
Realizaremos varias mejoras en el API desarrollada con Nest: Seguridad, Cors y relaciones de 1 a 1 y de muchos a muchos.
Gestión de roles y subida de ficheros en nuestro API REST. Cómo usar la caché de Nest para evitar repetir las SQL. Cómo debugear las sentencias SQL con un log a fichero. Cómo hacer el versionado del API.
En esta clase vamos a mostrar de manera práctica cómo se hace el despliegue de una aplicación NodeJS, el API REST que hemos desarrollado durante el curso. Lo haremos en la plataforma Heroku, ya que nos permite desplegar la aplicación y la base de datos PostgreSQL de manera gratuita.
En esta clase implementamos un mecanismo de seguridad habitual en las API REST, consistente en ofrecer un refresh token, junto con el access token durante el proceso de login. Veremos para qué sirve el refresh token y cómo mantener activo el login del usuario por más tiempo y entregar nuevos access token cuando hayan caducado.
Valoraciones
Enrique Gálvez
Este curso merece mucho la pena para quienes quieran saber cuáles son las partes de un proyecto de API y cómo desarrollarlas en Node.
Sergio Aguilar Flores
¿Conoces nuestra tarifa plana?
Toda la formación de EscuelaIT, con más de 200 cursos completos para aprender las más variadas tecnologías de programación, diseño y marketing online. Todo! con tu suscripción.