Skip to content

posesop/kaitinder

Repository files navigation

Workshop API Node.js & Express

¿Por qué este workshop?

El objetivo del taller es aprender a crear un API Rest con Node.js y Express. Construiremos nuestros endpoints validados y testeados correctamente. Utilizaremos una base de datos MongoDB en la nube y conectaremos con servicios de terceros para obtener cierta información. Todo ello intentando aplicar buenas prácticas de desarrollo y testing. Vamos a preparar la api para un “kairosTinder”

Requisitos

Javascript nivel básico. Será necesario tener instaladas las siguientes herramientas antes del inicio del taller. Si tienes alguna duda puedes contactar directamente con cualquiera de los profesores que te ayudarán a tenerlo todo listo.

¿Quienes somos?

  • Beatriz de Miguel (beatriz.demiguel@kairosds.com) Programadora front desde hace 6 años y desde hace 1 año más enfocada en el mundo backend.

  • Víctor Pose (victor.pose@kairosds.com) Desarrollador con más de 5 años de experiencia en Back, tanto con Node.js como con Java.

Antes de empezar

Conoce la estructura básica de un proyecto backend:

alt text

Elementos:

  • Rutas: donde se conecta qué controladores o middlewares ejecutar para una petición HTTP.
  • Controladores: donde se ubican las funciones o middlewares que sepan responder a las peticiones.
  • Middlewares: donde se ubican las funciones que se encargarán de preprocesar o postprocesar los datos de las peticiones HTTP, por ejemplo, la autentificación de usuarios, validación de datos entre otros.
  • Dominio: donde se define la lógica de negocio
  • Datos: donde se definen los modelos que permitirán manipular la base de datos

¿Cómo es un proyecto con expressJS?

Puesta en marcha

Ya puedes hacer el challenge-0

Endpoint básico que conecta con Mongo

¿Qué es un ODM?

Es una librería de modelado, que nos permita manipular la base de datos sin necesidad de conocer mongodb a fondo. Hay tareas repetitivas que controlar como la inserción, la búsqueda, la conexión, evitar inyección de código malicioso, mapear los datos de la base a modelos, etc. Estas tareas y más son las que conforman normalmente un ORM (Object-Relational mapping).

Ya puedes hacer el challenge-1

Patrón middleware y filtros con Mongo

Ya puedes hacer el challenge-2

Test de integración del Api con supertest

Ya puedes hacer el challenge-3

Refactoring y estructura de proyecto

Ya puedes hacer el challenge-4

Conexión con Apis externas.

Ya puedes hacer el challenge-5

Documentación de api:

About

Workshop API node.js

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors