Backen de la web de una Tienda de Mascotas.
- Es un poco obvio y tal vez redundante, pero está hecho en Spring
- Actualmente el backen permite generar tokens y las gestion de Usuarios(crear, ver, eliminar).
- La base de datos está en MySql, tienen que crear la tabla tiendamascotas, las tablas se generan autómaticamente al momento de cargar la aplicación.
- La aplicación tambien carga a la Base de Datos automaticamente en la Tabla Rol los roles ADMIN y NORMAL con los id 1 y 2 respectivamente.
- Why did you undertake it?
Las apis las podríamos dividir en 2 categorías: las que necesitan token y las que no. Las que requieren token tienen que generarlo usando la Api para generar token, para esto es necesario que creen un usuario, no importa el rol. Una vez generado tendran que colocarlo en la parte de Autorización Bearer Token de su Postman, Insomnia o lo que usen.
- Apis que no requieren token
- Generar token
- Añadir usuarios
- Apis que requieren token
- Ver usuario
- Eliminar usuario
-
Generador de token
-Json enviado
{ "username": "usuario", "password" :"contraseña" }
-Respuesta
{ "token": "eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ1c2VyNCIsImV4cCI6MTY2OTM3MDkzMSwiaWF0IjoxNjY5MzM0OTMxfQ.BSq0jxD2w1LhdynaaowxmXcaaVaq_De4cWtt81iOUQU" }
-
Crear usuario (recordar que rol id 1 es ADMIN y rol id 2 es NORMAL)
-Ruta
http://localhost:8080/usuarios/
-Json enviado
{ "nombre": "Luis", "username": "usuario", "password": "12345", "apellidoPaterno": "Montoya", "apellidoMaterno": "Peralta", "edad": "18", "correo": "zxcz@gmail.com", "fechaRegistro": "2015-12-10", "direccion": "mi casa", "rol":{ "id": 1 } }
-
Ver usuario
-Ruta
http://localhost:8080/usuarios/ElUsernameDeSuUsuario
-Respuesta
{ "id": 2, "username": "user4", "password": "12345", "apellidoPaterno": "Montoya", "apellidoMaterno": "Peralta", "edad": 18, "direccion": "mi casa", "correo": "zxcz@gmail.com", "fechaRegistro": "2015-12-10T00:00:00.000+00:00", "activo": true, "rol": { "id": 1, "rolNombre": "NORMAL" }, "carrito": null, "enabled": true, "authorities": [ { "authority": null } ], "accountNonLocked": true, "accountNonExpired": true, "credentialsNonExpired": true }
-
Eliminar usuario: La eliminación es lógica, por lo que solo se cambiara su estado "Activo" a false
-Ruta
http://localhost:8080/usuarios/ElIdDelUsuario