Skip to content

Irumau/API-REST-con-expres.js-

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

EndPoints

Products

Users

NOTAS

Rest: Representational State Transfer

Es una convección que se refiere a servicios web por protocolo HTTP Métodos:

  • Get: Obtener
  • Put: Modificar/Actualizar
  • Patch: Modificar/Actualizar
  • Post: Crear
  • Delete: Eliminar

La convención de REST nos dice que por cada casi entidad que tengamos tendremos una ruta, un endpoint con un nombre, y también deberíamos tener un id por cada producto

Conceptos

Middleware

El término middleware se refiere a un sistema de software que ofrece servicios y funciones comunes para las aplicaciones. En general, el middleware se encarga de las tareas de gestión de datos, servicios de aplicaciones, mensajería, autenticación y gestión de API.

Uses cases:

  • Funcionan como Pipes
  • Validar datos
  • Capturar errores
  • Validar permisos
  • Controlar accesos

Servicios

Los servicios es donde encapsulamos todos los casos de usos y comenzar a interactuar con la lógica de negocio. En el caso de una tienda: hacer compras, transacciones, etc.

Estructura

Esta arquitectura está definida por capas.

Entidades:

  • En esta capa encontramos las entidades base del negocio.
  • En nuestro caso: productos, categorías, órdenes de compra.

Casos de uso

  • En esta capa tenemos lo relacionado a la lógica de negocio
  • En esta capa se encuentra los servicios

Controladores

  • En esta capa se brinda el acceso.
  • Aquí encontramos el routing

Flujo de trabajo:

  • Controladores: Encontramos los routes y middleware.
  • Los controladores acceden a la capa de servicios
  • Servicios: donde se encuentra la lógica de negocio
  • Los servicios usan las librerías.
  • Las librerías se encargan de contactarse a la capa de entidades
  • Las librerías se contactan a otras fuentes de datos: API externa o base de datos.

Joi

Joi es la herramienta más poderosa para la validación de datos en JavaScript. Este módulo permite crear esquemas de datos usando un lenguaje simple, comprensible e intuitivo. A la hora de interactuar con una API, es muy importante que se validen los datos tanto en el lado del servidor como en el del cliente para tener controlados posibles errores y la forma en la que se interactúa con la base de datos.

Documentación de Joi

Middlewares populares en Express.js

CORS

Middleware para habilitar CORS (Cross-origin resource sharing) en nuestras rutas o aplicación. Cors middleware

Morgan

Un logger de solicitudes HTTP para Node.js. Morgan

Helmet

Helmet nos ayuda a proteger nuestras aplicaciones Express configurando varios encabezados HTTP. ¡No es a prueba de balas de plata, pero puede ayudar! Helmet

Express Debug

Nos permite hacer debugging de nuestras aplicaciones en Express mediante el uso de un toolbar en la pagina cuando las estamos desarrollando. Express Debug

Express Slash

Este middleware nos permite evitar preocuparnos por escribir las rutas con o sin slash al final de ellas. Express Slash

Passport

Passport es un middleware que nos permite establecer diferentes estrategias de autenticación a nuestras aplicaciones. Passport

Puedes encontrar más middlewares populares en el siguiente enlace: Middleware populares

Releases

No releases published

Packages

No packages published