Configurar límites y api keys en Restler
Configurar límites y api keys en Restler

Restler es un framework rest escrito en php el cual a través de un conjunto de librerías nos permite el desarrollo rápido de servicios / apis rest con muchísimas opciones fáciles de configurar.

Lo siguiente es algo de lo que ofrece Restler.

Un marco REST API en el lado del servidor escrito en php que nos ayuda a desarrollar servicios que sean consumidos por aplicaciones móviles, web o de escritorio. Un marco de trabajo para facilitarnos la vida.

La ventaja de Restler es la simplicidad. Podemos crear una clase php con algunos métodos que sean expuestos para los usuarios de forma muy sencilla. Sólo necesitas conocimientos de php orientado a objetos.

Todos los métodos públicos se asignan automáticamente a una dirección url, los métodos con otro ámbito directamente no serán expuestos.

Restler nos ofrece formatos JSON, XML, YAML, AMF, por si fuera poco, nos permite definir nuestros propios formatos de forma sencilla.

Soporta diferentes esquemas de autenticación y nosotros podemos añadir uno propio personalizado al 100%.

Si tienes interés de aprender php orientado a objetos y php 7 aquí tienes un curso completo.

Con todo lo anterior ya sabrás si te puede interesar o no, para este tutorial nosotros simplemente vamos a ver cómo llevar a cabo la instalación de la rc6 la cuál tiene soporte para php 7 y es la última versión en la actualidad.

Instalar Restler 3 con composer

La instalación más sencilla simplemente es generar un directorio vació con un composer.json y el siguiente código dentro.


Si ahora ejecutas el siguiente comando ya tendremos todas las dependencias necesarias instaladas, aparte, cómo puedes ver también hacemos la autocarga del espacio de nombres App que vamos a tener en el directorio App de nuestro proyecto, así podremos separar nuestra aplicación y será más confortable el trabajo en ella.

Exponer una clase Api

Ahora que tenemos todo lo necesario, crea el directorio App en la raíz del proyecto y dentro un archivo llamado Users.php con el siguiente código, simplemente será un ejemplo de api con restler.


La clase Users expone todos los métodos para la típica api rest, pero no funciona por sólo crearla, debemos decirle a Restler que existe, para ello crea el archivo index.php en la raíz del proyecto y añade el siguiente código, este será el punto de entrada de la api.


Tan sencillo cómo eso, creo que no merece explicación, el código habla por si mismo, finalmente, necesitamos crear dos archivos para levantar el servidor, aunque esta opción no es requerida si ya tienes un servidor instalado y configurado, para ello crea un archivo llamado serve en la raíz del proyecto con el siguiente código.


Finalmente sólo debes crear el archivo server.php a la misma altura con el siguiente código.


Y ahora sí, abre una terminal, si estás en windows te recomiendo la de git y ejecuta el siguiente comando para levantar el server.


Si ahora accedes a http://localhost:8000/ debes ver un 404 de Restler, eso es que lo hemos hecho todo bien, las siguientes son las urls a través de las cuales puedes consumir la api.

  • http://localhost:8000/users (GET, para obtener todos los usuarios).
  • http://localhost:8000/users/{id} (GET, para obtener un usuario).
  • http://localhost:8000 (POST, para crear un usuario).
  • http://localhost:8000/users/{id} (PUT, para actualizar un usuario).
  • http://localhost:8000/users/{id} (DELETE, para eliminar un usuario).

Exponer distintos formatos en nuestra api

Para exponer los típicos formatos xml y json en nuestra api simplemente modifica el archivo index.php por el siguiente.


Y ahora, para obtener todos los usuarios en formato json deberás utilizar la url http://localhost:8000/users.json, y para obtenerlos en formato xml http://localhost:8000/users.xml, no puede ser más sencillo.

Si te ha parecido interesante comparte el post, gracias.