Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jeanpgr/authentication_api-jwt
Módulo REST de login con autenticación y autorización de usuarios JWT (JSON WEB TOKEN) desarrollado con el microframework FlightPHP.
https://github.com/jeanpgr/authentication_api-jwt
composer flightphp jwt-authentication mvc-architecture php
Last synced: about 2 months ago
JSON representation
Módulo REST de login con autenticación y autorización de usuarios JWT (JSON WEB TOKEN) desarrollado con el microframework FlightPHP.
- Host: GitHub
- URL: https://github.com/jeanpgr/authentication_api-jwt
- Owner: jeanpgr
- License: mit
- Created: 2024-03-21T03:37:54.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2024-05-28T16:43:08.000Z (7 months ago)
- Last Synced: 2024-06-08T05:33:32.849Z (7 months ago)
- Topics: composer, flightphp, jwt-authentication, mvc-architecture, php
- Language: PHP
- Homepage:
- Size: 94.7 KB
- Stars: 2
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# API con FlightPHP y JWT
Esta es una API construida con el microframework FlightPHP y utiliza JWT (JSON Web Tokens) para la autenticación y autorización de usuarios.
En esta API se puede implementar más endpoints para acceder a diferentes recursos y realizar operaciones CRUD (Crear, Leer, Actualizar, Eliminar) en la base de datos.## Requisitos
* PHP 7.4 o superior
* Composer (Gestor de paquetes)
* Base de datos MySQL u otro compatible
### Instalar
```
composer require firebase/php-jwt
composer require mikecao/flight
```## Endpoints
### Autenticación
* `POST /login`: Permite a un usuario autenticarse, se debe enviar un JSON con las credenciales de usuario (correo y contraseña) y devuelve un JSON con el token JWT y status `OK` si la autenticación es exitosa.
### Usuarios
* `POST /registerUser`: Crea un nuevo usuario, se deben proporcionar los datos del usuario en un JSON en el cuerpo de la solicitud.
* `GET /getUsers`: Obtiene todos los usuarios registrados en la base de datos (Para acceder a este recurso es necesario enviar el token en la cabecera de la solicitud para validar el token)## Autenticación con JWT
Para acceder a los endpoints protegidos, debes incluir el token JWT en la cabecera `Authorization` de la solicitud. El token se obtiene después de iniciar sesión exitosamente en el endpoint `/login`.
### Ejemplo
```
Authorization: Bearer
```
> [!NOTE]
> Para proteger los endpoints que se vaya a implementar llamar a la función `validarToken` en un condicional.## Ejemplo de solicitud y respuesta
### Solicitud
```
POST /login
Content-Type: application/json{
"email": "[email protected]",
"contraseña": "test"
}
```
### Respuesta Exitosa
```
HTTP/1.1 200 OK
Content-Type: application/json{
"message": "Inicio de sesión exitoso",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyX2lkIjoxMjM0NTY3ODkwLCJpYXQiOjE2MzI4MzM2NjAsImV4cCI6MTYzMjgzMzc2MH0",
"status": "OK"
}
```
### Contribuciones
Si deseas contribuir a este proyecto, ¡siéntete libre de hacer un fork y enviar tus pull requests!### Licencia
Este proyecto está bajo la Licencia MIT. Consulta el archivo [LICENSE](https://github.com/jeangr-dev/Authentication_API-JWT/blob/main/LICENSE) para más detalles.