Este proyecto implementa una API de autenticación utilizando Spring Boot y Spring Security. Permite el registro de usuarios, inicio de sesión, obtención y actualización del perfil de usuario.
- Java 17
- Maven
- Base de datos MySQL en Clever Cloud
-
Clona el repositorio desde GitHub:
git clone https://github.com/LucOrt91/DemoVeinsOfGames.git
-
Abre el proyecto en tu IDE preferido.
-
Verifica que tengas configurado Java 17 en tu entorno de desarrollo.
-
Configura el archivo
application.properties
con la configuración de conexión a la base de datos MySQL proporcionada por Clever Cloud.
-
Desde la terminal, navega hasta el directorio del proyecto y ejecuta el siguiente comando para compilar el proyecto:
mvn clean install
-
Después de la compilación, ejecuta el siguiente comando para iniciar la aplicación:
mvn spring-boot:run
-
Una vez que la aplicación esté en ejecución, puedes acceder a la documentación de la API a través de Swagger en la siguiente URL:
http://localhost:8080/doc/swagger-ui.html
- Endpoint:
POST /auth/register
- Descripción: Registra un nuevo usuario en el sistema.
- Cuerpo de la solicitud: Debe contener los datos del usuario a registrar.
- Respuesta: Retorna un mensaje de éxito o error.
- Endpoint:
POST /auth/login
- Descripción: Inicia sesión en el sistema.
- Cuerpo de la solicitud: Debe contener el nombre de usuario y la contraseña.
- Respuesta: Retorna un token JWT en caso de éxito.
- Endpoint:
GET /user/profile
- Descripción: Obtiene el perfil del usuario autenticado.
- Encabezados: Debe incluir el token JWT en el encabezado de la solicitud.
- Respuesta: Retorna el perfil del usuario o un mensaje de error si el token es inválido.
- Endpoint:
PUT /user/profile
- Descripción: Actualiza el perfil del usuario autenticado.
- Encabezados: Debe incluir el token JWT en el encabezado de la solicitud.
- Cuerpo de la solicitud: Debe contener los datos actualizados del usuario.
- Respuesta: Retorna un mensaje de éxito o error.
Se han incluido pruebas unitarias para los servicios utilizando JUnit 5 y Mockito. Para ejecutar las pruebas, puedes utilizar el siguiente comando:
mvn test