API RESTful - Realizada con Spring Boot
En el desarrollo de esta api, se trato de usar las mejores practicas, y se enfocó en seguir los principios de arquitectura REST.
Se aplicaron patrones de diseño como el patrón MVC (Modelo-Vista-Controlador) para separar la lógica de negocio, la presentación y el control de la aplicación.
- Desarrollo en Spring Framework
- Spring Boot
- Spring Security
- Seguridad: Autenticación basada en tokens (JWT) y autorización, para proteger tu API.
- Persistencia de Datos con JPA
- Documentación de API
- Gestión de Usuarios y Roles
- Gestión de Solicitudes y Respuestas HTTP
- Mensajes de Error y Excepciones, y Validación de Datos de una api
- Java y el Framework Spring para la lógica de negocio y la API REST.
- Spring Security para la autenticación y autorización.
- Spring Data JPA para la persistencia de datos.
- SpringDoc para la generación de documentación de la API.
- Base de datos relacional (MySQL) para el almacenamiento de datos.
- Control de Versiones con Flyway
Para comenzar a utilizar esta API, sigue estos pasos:
-
Clonar el Repositorio: Clona este repositorio en tu entorno local utilizando el comando
git clone
. -
Configuración de la Base de Datos: Asegúrate de que la configuración de la base de datos se ajuste a tus necesidades. Por defecto, se utiliza MySQL. Debes configurar las propiedades de conexión en el archivo
application.properties
. -
Compilación y Ejecución: Utiliza Maven o tu IDE favorito para compilar y ejecutar la aplicación. La API estará disponible en
http://localhost:8080
de forma predeterminada. -
Documentación de la API: Accede a la documentación de la API en
/swagger-ui.html
para obtener detalles sobre los puntos de conexión disponibles y cómo utilizarlos. -
Registrar usuario: Utiliza las rutas
/api/users/create
para registrar a un usuario. -
Autenticación: Utiliza las rutas
/api/login
para obtener un token JWT y autorizar tus solicitudes. Asegúrate de incluir el token en la cabeceraAuthorization
de tus solicitudes posteriores. -
Gestión de Recursos: Comienza a crear categorías, temas y publicaciones utilizando las rutas adecuadas. Asegúrate de tener los permisos necesarios para las operaciones de administración.