Download the PHP package albertorc87/easyapi without Composer

On this page you can find all versions of the php package albertorc87/easyapi. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package easyapi

EasyAPI Framework

EasyAPI es un micro framework pensado en el desarrollo de APIs con arquitectura REST y que no depende de ninguna librería.

Guía para aprender a trabajar con APIs

Si muchas cosas de las que se comentan en esta documentación no las tienes claras, te dejo está guía donde explico cómo trabajar con APIs y cómo construirlas.

Guía para aprender a trabajar con APIs

Instalación

Hello world

Crea un directorio llamado public dentro de la carpeta raiz del proyecto y dentro de el un archivo llamado index.php con el siguiente código:

Levantamos el server de PHP para verlo en funcionamiento:

Para que funcione el proyecto, debemos crear las variables de entorno DEBUG_MODE y ROOT_PROJECT para que funcione el framework antes de crear la instancia de EasyAPI\App.

DEBUG_MODE si está a true las excepciones no controladas se podrán ver en la respuesta, si no, se guardará un log en la carpeta logs en la raiz del proyecto.

ROOT_PROJECT aquí debemos añadir la ruta raiz del proyecto. Por el momento solo se utiliza para crear la carpeta logs y ahí guardar los logs que se generen.

En vez añadirlo en el código como he hecho, podemos valernos de librerías como dotenv para crear un archivo .env y que esta librería se encargue de cargar las variables de entorno.

Enrutamiento

Para crear el enrutamiento, debemos importar la clase EasyAPI\Router y después añadir las urls que queramos. El método http lo indicamos según el método de Router que utilicemos y los cinco disponibles son get, post, put, patch y delete.

El primer parámetro que recibe la URI a la que queramos apuntar.

El segundo parámetro puede ser una clase y el método al que queramos llamar separado por la @. Ejemplo:

App\Controller\UserController@all

App\Controller\UserController sería la clase.

all sería el método que contiene la clase y al que queremos llamar.

El tercer parámetro es opcional y en el podemos añadir un middleware para por ejemplo comprobar que el usuario está autenticado en los casos en los que lo necesitemos. Explicaremos más adelante su funcionamiento. En este caso podemos enviar un middleware o un array de middlewares.

Envío de parámetros de ruta

Para enviar parámetros de ruta debemos utilizar regex, muy importante indicar el nombre del campo para que funcione

Respuesta

La respuesta se realiza desde la clase EasyAPI\Response, todos los métodos y funciones anónimas que añadamos en una ruta deben añadir como respuesta esta clase, si no fallará. Para facilitar el trabajo, hay una función llamada view dentro de los helpers que recibe los mismos parámetros que EasyAPI\Response y retorna el objecto.

O

Los parámetros que puede recibir EasyAPI\Response, son el tipo de dato que vamos a retornar que puede ser json, raw (para respuestas customizadas) y html, el segundo parámetro es la respuesta al usuario, puede ser un string y en el caso del formato json podemos enviar un array que el proceso lo convertirá a json. El tercer parámetro es el código de estado http que por defecto es el 200 y por último podemos añadir cabeceras extra en formato clave-valor.

En el caso del formato json las respuestas están preformateadas. Si enviamos un código de estado menor al 400 mostrará la siguiente respuesta:

En el caso de código de estado errónea la respuesta será:

Middleware

Las rutas permiten la opción de añadir middlewares para realizar validaciones extra antes de que se ejecute nuestro controlador. Cada middleware que creemos debe extender de la clase EasyAPI\Middleware y recibirá y retornará un objecto EasyAPI\Request. Este objecto lo podemos utilizar para guardar información que obtengamos desde el middleware y luego enviarla al controlador.

Ejemplo de middleware para verificar una autenticación por token JWT en el que guardamos el id de usuario.

Posteiormente podremos acceder a la información almacenada en Request dentro del controlador recibiendo el parámetro Request que la clase App se encarga de enviar cada vez que ejecutamos una ruta.

Fijaos en que si enviamos parámetros de ruta, Request siempre será el último parámetro.

Request

La clase Request tiene dos métodos, setData para guardar información en formato clave-valor y getData para obtener la información almacenada en una clave:

HttpException

Si queremos lanzar una excepción que directamente envíe un mensaje al usuario, podemos usar EAsyAPI\HttpException el cual recibe un mensaje de error y el código de estado http. EasyAPI se encarga de traducirlo y convertirlo en una respuesta en formato JSON para el usuario.

En el controlador que utilizamos anteriormente:

Si no encontramos la tarea, lanzamos HttpException con el mensaje y el código de estado 404 not found y el usuario recibirá esto:

Código de estado HTTP: 404

Pronto aquí más info sobre este framework


All versions of easyapi with dependencies

PHP Build Version
Package Version
Requires php Version 7.4 - 8.1
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package albertorc87/easyapi contains the following files

Loading the files please wait ....