Download the PHP package siu-toba/rest without Composer
On this page you can find all versions of the php package siu-toba/rest. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download siu-toba/rest
More information about siu-toba/rest
Files in siu-toba/rest
Package rest
Short Description Libreria para servicios REST
License
Homepage http://toba.siu.edu.ar
Informations about the package rest
REST
Esta librería permite servir APIs rest de forma simple pero estructurada. La misma no posee requisitos específicos de Toba y puede utilizarse de manera standalone en otros sistemas.
Creación de una API REST
La definición de una API REST se basa en convenciones y no requiere especificar metadatos.
Definición de Recursos
Toda información que pueda ser nombrada es un Recurso, por ejemplo: documentos, imagenes, colecciones de otros recursos, tablas definidas en una base de datos, etc. Los recursos a publicar/compartir para un determinado proyecto deben indicarse mediante una clase PHP dentro de la carpeta _/proyectos/nombreproyecto/php/rest/. Por Ejemplo:
php/rest/recurso_personas.php
se publica enhttp://../rest/personas
php/rest/personas/recurso_personas.php
se publica enhttp://../rest/personas
php/rest/recurso_deportes.php
se publica enhttp://../rest/deportes
Los archivos de los recursos deben tener el prefijo recurso_
, por ejemplo, para el recurso personas
, se debe definir el archivo recurso_personas.php
. Cualquier otro archivo definido sin dicho prefijo, no será interpretada como recurso. El nombre en sí de la clase puede diferir del del archivo, no será tomado en cuenta por nada de la librería, simplemente instancia la clase que encuentre en el archivo.
Cada acceso al recurso tiene asociado un método en la clase del mismo, recibiendo como parámetros la parte dinámica de la URL. Por ejemplo, para el siguiente recurso se utiliza el parametro id
como identificador:
Aquí un ejemplo completo de recurso personas
:
Para los casos en los que se requiera recuperar un conjunto de recursos o dar de alta un recurso en particular, se utiliza el sufijo list (para hacer referencia que es sobre la lista de valores y no sobre uno puntual):
Si se quiere enviar respuestas que no sean JSON o con headers especificos, se puede hacer cambiando la vista y configurando la respuesta de la siguiente manera:
Sub APIs
La librería permite agrupar recursos en subcarpetas, con hasta dos niveles de profundidad, permitiendo asi, definir sub APIs y lograr una mejor división semántica que facilite la aplicación de distintas configuraciones según el caso. Además estas subcarpetas sirven de prefijo de acceso en la URL, por ejemplo /personas/deportes/.
Por ejemplo, una API que brinda servicios al usuario actual, puede tener las subdivisiones admin
y me
. Para esto se deberá crear una carpeta /rest/me y /rest/admin sin ningún recurso dentro. Si se quieren conocer las mascotas
del usuario actual, se debe crear un recurso mascotas
en _/rest/me/mascotas/recursomascotas.php y luego, se podrá acceder por medio de la url /rest/me/mascotas. La alternativa, mas compleja, sin utilizar sub APIs, es accediendo a _/rest/usuarios/{usuarioactual}/mascotas.
Links relacionados
All versions of rest with dependencies
doctrine/cache Version ~1.13
siu-toba/ssl-cert-utils Version 1.0
siu-toba/jwt-util Version ~1.0.0