Primeros pasos REST + acceso consola swagger

Hola Gente!

Les comento, arrancamos con un proyecto que se migró de versiones anteriores hasta finalizar con la 2.6 de SIU-Toba. Un detalle, faltaba el controlador rest.php dentro del directorio www del proyecto migrado.

Además, intentando acceder a la consola de visualización de WS REST… aparece este error


Fatal error: require_once(): Failed opening required '' (include_path='........') in /...../php/lib/rest/lib/rest_instanciador.php on line 26

¿Se les ocurre en que punto existe algún inconveniente? Gracias de antemano!

PD: en el toba_referencia el swagger está andando cual reloj suizo…

Hola,

Se me hace que puede ser algun problema de la estructura de los recursos.

La consolita llama a [url]/rest/api-docs que parsea la carpeta /rest en busqueda de los recursos y luego los instancia para poder leer los metadatos. Por algún motivo le está llegando un ’ ’ que evidentemente no existe.

Ya que toba_referencia funciona, pueden ir pegando los recursos a la carpeta rest de toba_referencia y ver cuando deja de funcionar (si tienen dependencias del proyecto las pueden borrar, con que queden los archivos y metodos vacíos alcanza).

También pueden mirar si se llega a generar la raiz de la documentación y ver si quedan paths raros: [url]/rest/api-docs.

Saludos!

Bingo! Resulta que algunos de los recursos tenían definido un nombre compuesto… oficinas_contratacion, solicitud_alta_bienes, etc. Veo que el guión bajo está siendo interpretado como separador de niveles del recurso a buscar…

Es muy dificil pensar en que los recursos puedan tener nombres compuestos (ya sea utilizando separadores tipo guiones bajos o medios… aunque los medios rompen el json…).

Gracias!

Bien, lo voy a anotar igual porque no es muy claro el error :slight_smile:

Como decís, los nombres compuestos no están tan buenos para poner en la API… aunque siempre podría estar la excepción. En tal caso en la URL quedaría más lindo un -, si lo necesitan podemos verlo.

Pero en general se pueden ‘descomponer’ y modelar de manera más simple… quizás terminan siendo subrecursos, quizás puede quedar implicito, o pueden usar el agrupado del otro post [/solicitudes/bienes]… Despues si es alta o no puede indicarse con la acción, o algún parámetro de la query o del body. → Solo un ejemplo, hay que verlo entero y pensar de que forma alguien que no sepa mucho del modelo de diaguita lo va a entender mejor.

Hola Sergio,

esto es un poco extraño, ya que la version 2.5 tiene entre los pasos de migracion justamente copiar el archivo rest.php al directorio navegable del proyecto. De que version vinieron migrando?, asi pruebo por si es un caso particular en el que falla.

Saludos

Se trata de SIU-Diaguita… y ha pasado por muchas conversiones de Toba… últimamente fueron de la 2.3.5, luego 2.4.1 y rápidamente a la 2.6. Tampoco puedo asegurar al 100% que cuando se realizó la migración, no se haya pasado por alto el nuevo archivo rest.php.

Gracias igual :slight_smile: