REST API que permite el uso de una base de datos sencilla para relacionar usuarios con facturas
Para ejecutar en docker, se debe descargar y descomprimir el proyecto. Abrir CMD en carpeta raíz del proyecto ( /springboot-skill-test/ ). Ejecutar
docker-compose up
Para acceder a la API, primero se debe crear un usuario por medio de POSTMAN mientras se ejecuta el proyecto.
- Desde el método POST, ingresar la URL: localhost:9898/auth/new Seleccionar Body > Raw > JSON y diligenciar formato:
{
"name":"Nombre de Persona",
"username":"Nombre de Usuario (Para el Login)",
"email":"Correo Electrónico",
"password":"Contraseña (Para el login)",
"roles":["admin"]
}
"roles":["admin"] es opcional, en caso de no diligenciar, se creará un usuario de rol "user", con acceso limitado. Deberá devolver Status Code 201 Created y mensaje Usuario Guardado
- Iniciar sesión para extraer API Token. Escribir URL localhost:9898/auth/login Y diligenciar Body > Raw > JSON:
{
"username":"Nombre de Usuario",
"password":"Contraseña"
}
Devolverá un JSON con valores
{
"token": "token",
"bearer": "Bearer",
"username": "Nombre de Usuario ( Logeado )",
"authorities": [
{
"authority": "ROLE_USER"
},
{
"authority": "ROLE_ADMIN"
}
]
}
Importante copiar el token.
- Configurar Token. En el apartado Authorization, seleccionar llave de tipo "Bearer Token" y en el valor de la llave, establecer
Bearar tokenKey
- Realizar peticiones.
El acceso a la api se brinda a partir de URL Base:
localhost:9898/api/
- Crear Usuario - ADMIN - POST - /create/user/id/nombre/edad/correo
/create/user/10/John Doe/30/johndoe@example.com
- Crear Factura - ADMIN - POST - /create/bill/id/valorTotal/descripcion/idDeUsuario
/create/bill/5/154.56/Paquete de mentas/10
- Mostrar Facturas de un Usuario - USER/ADMIN - GET - /show/idDeUsuario
/show/10
- Actualizar Factura - ADMIN - /update/bill/id/valorTotal/descripcion/idDeUsuario
/update/bill/5/1540.50/Paquete de mentas X 10/10
- Eliminar Factura - ADMIN - /delete/bill/idDeFactura
/delete/bill/5
- SpringBoot - El framework web usado
- Maven - Manejador de dependencias
- ProgreSQL - Usado para gestionar Base de Datos
- Docker - Usado para crear Dockerfile y Docker-compose