Giter VIP home page Giter VIP logo

application-api-rest's Introduction

Laravel Logo

Build Status Total Downloads Latest Stable Version License

API REST hecho en Laravel con arquitectura hexagonal y JWT

Este proyecto es una API REST (Representational State Transfer) desarrollada en Laravel, que utiliza una arquitectura hexagonal y JWT (JSON Web Tokens) para la autenticación.

Características

  • Implementa los métodos estándar de HTTP (GET, POST, PUT, DELETE) para realizar operaciones en los recursos.
  • Utiliza JWT para la autenticación y autorización de usuarios.
  • Sigue los principios de la arquitectura hexagonal para una estructura modular y flexible.
  • Proporciona respuestas en formato JSON para una fácil integración con clientes.

Uso

Para utilizar esta API REST, sigue los siguientes pasos:

  1. Clona el repositorio en tu máquina local.
  2. Configura la base de datos y las variables de entorno necesarias.
  3. Ejecuta las migraciones para crear las tablas en la base de datos.
  4. Inicia el servidor y comienza a realizar las solicitudes HTTP a las URL de los recursos.

API REST

Una API REST (Representational State Transfer) es un estilo de arquitectura de software que define un conjunto de restricciones y principios para el diseño de servicios web. Estos servicios web se basan en el protocolo HTTP y utilizan los métodos estándar de HTTP, como GET, POST, PUT y DELETE, para realizar operaciones en los recursos.

Una API REST se compone de recursos, que son objetos o conjuntos de datos que pueden ser accedidos y manipulados a través de la API. Cada recurso tiene una URL única que lo identifica y se puede acceder a él mediante las operaciones definidas por la API.

La API REST sigue el principio de estado representacional, lo que significa que cada solicitud HTTP contiene toda la información necesaria para comprender y procesar la solicitud. No se mantiene ningún estado en el servidor entre las solicitudes, lo que hace que la API sea escalable y fácil de mantener.

Para interactuar con una API REST, los clientes envían solicitudes HTTP a las URL de los recursos y reciben respuestas en formato JSON, XML u otros formatos. Estas respuestas contienen los datos solicitados o información sobre el resultado de la operación.

En resumen, una API REST es una forma eficiente y flexible de exponer y consumir servicios web. Proporciona una interfaz uniforme para acceder y manipular recursos a través de operaciones HTTP estándar.

Arquitectura Hexagonal

Este proyecto utiliza la arquitectura hexagonal para organizar y estructurar el código. La arquitectura hexagonal, también conocida como arquitectura de puertos y adaptadores, separa claramente las capas de negocio de las capas de infraestructura y presenta una estructura modular y flexible.

En esta arquitectura, el núcleo de la aplicación se encuentra en el centro, rodeado por los puertos y adaptadores. Los puertos son interfaces que definen las interacciones entre el núcleo y el mundo exterior, mientras que los adaptadores son implementaciones concretas de esos puertos.

Esta separación permite una mayor flexibilidad y facilita las pruebas unitarias y la sustitución de componentes. Además, la arquitectura hexagonal promueve la reutilización de código y facilita la evolución y mantenimiento del sistema a largo plazo.

Para obtener más información sobre la arquitectura hexagonal, consulta la documentación oficial de Laravel y otros recursos en línea.

application-api-rest's People

Contributors

francocondor avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.