[SOLUCIONADO] Webservices a guarani

Hola buenos dias, tengo una consulta sobre los webservices que ofrece guarani, estoy probando desde un sistema propio en toba 2.7, llamar a los webservices que ofrece guarani, por ejemplo el de docentes (recurso_docentes.php) que ya viene en la versión 3.10.2

configuré los archivos servidor.ini y servidor_usuarios.ini, y en el sistema que haría de cliente configuré el archivo cliente.ini
por ejemplo probando obtener los docentes de una comisión pongo “http://192.168.1.13/guarani/rest/comisiones/29630/docentes” en el navegador, me pide usuario y clave que ingrese en servidor_usuarios.ini y funciona perfecto.
pero cuando lo invoco desde mi sistema cliente me sale error [status code] 401 [reason phrase] Unauthorized, por el log veo que el archivo cliente.ini lo está leyendo bien, el usuario y clave son los mismos en cliente.ini y servidor_usuarios.ini, no se que mas me falta configurar

adjunto el log del sistema cliente

[DEBUG][docentesfce] Invocando servicio guarani. Opciones:
array (
  'to' => 'http://192.168.1.13/guarani/rest/',
  'auth_tipo' => 'any',
  'auth_usuario' => 'prueba',
  'auth_password' => 'prueba',
)
[CRITICAL][toba] GuzzleHttp\Exception\ClientException: Client error response [url] http://192.168.1.13/guarani/rest/comisiones/29630/docentes [status code] 401 [reason phrase] Unauthorized

[TRAZA]exception 'GuzzleHttp\Exception\ClientException' with message 'Client error response [url] http://192.168.1.13/guarani/rest/comisiones/29630/docentes [status code] 401 [reason phrase] Unauthorized' in /home/fce/toba/php/vendor/guzzlehttp/guzzle/src/Exception/RequestException.php:89
Stack trace:
#0 /home/fce/toba/php/vendor/guzzlehttp/guzzle/src/Subscriber/HttpError.php(33): GuzzleHttp\Exception\RequestException::create(Object(GuzzleHttp\Message\Request), Object(GuzzleHttp\Message\Response))
#1 /home/fce/toba/php/vendor/guzzlehttp/guzzle/src/Event/Emitter.php(109): GuzzleHttp\Subscriber\HttpError->onComplete(Object(GuzzleHttp\Event\CompleteEvent), 'complete')
#2 /home/fce/toba/php/vendor/guzzlehttp/guzzle/src/RequestFsm.php(203): GuzzleHttp\Event\Emitter->emit('complete', Object(GuzzleHttp\Event\CompleteEvent))
#3 /home/fce/toba/php/vendor/guzzlehttp/guzzle/src/RequestFsm.php(92): GuzzleHttp\RequestFsm->complete(Object(GuzzleHttp\Transaction))
#4 /home/fce/toba/php/vendor/guzzlehttp/guzzle/src/RingBridge.php(121): GuzzleHttp\RequestFsm->__invoke(Object(GuzzleHttp\Transaction))
#5 /home/fce/toba/php/vendor/guzzlehttp/guzzle/src/RequestFsm.php(147): GuzzleHttp\RingBridge::completeRingResponse(Object(GuzzleHttp\Transaction), Array, Object(GuzzleHttp\Message\MessageFactory), Object(GuzzleHttp\RequestFsm))
#6 /home/fce/toba/php/vendor/react/promise/src/FulfilledPromise.php(25): GuzzleHttp\RequestFsm->GuzzleHttp\{closure}(Array)
#7 /home/fce/toba/php/vendor/react/promise/src/Promise.php(119): React\Promise\FulfilledPromise->then(Object(Closure), NULL)
#8 /home/fce/toba/php/vendor/react/promise/src/Promise.php(164): React\Promise\Promise->React\Promise\{closure}(Object(React\Promise\FulfilledPromise))
#9 /home/fce/toba/php/vendor/react/promise/src/Promise.php(133): React\Promise\Promise->settle(Object(React\Promise\FulfilledPromise))
#10 /home/fce/toba/php/vendor/react/promise/src/Promise.php(182): React\Promise\Promise->resolve(Array)
#11 [internal function]: React\Promise\Promise->React\Promise\{closure}(Array)
#12 /home/fce/toba/php/vendor/react/promise/src/Deferred.php(35): call_user_func(Object(Closure), Array)
#13 /home/fce/toba/php/vendor/guzzlehttp/ringphp/src/Client/CurlMultiHandler.php(247): React\Promise\Deferred->resolve(Array)
#14 /home/fce/toba/php/vendor/guzzlehttp/ringphp/src/Client/CurlMultiHandler.php(136): GuzzleHttp\Ring\Client\CurlMultiHandler->processMessages()


gracias
saludos

Hola, probaste ingresar a la consola de Swagger?

si ingresas a http://[url_gestion]/rest/ deberias ingresar a la API con todos los servicios, ahí podes probarlos “Try it out!”.

pregunta, como tenes configurado los archivos servidor.ini y servidor_usuarios.ini. Tendrían que quedar así:

servidor.ini:


autenticacion = digest

servidor_usuarios.ini:


[usuario]
password = xxxxxxxxx

pasame los logs de Apache y los de Guaraní (sudo tail -f [path_gestion]/lib/toba/instalacion/i__desarrollo/p__guarani/logs/sistema.log) que se generan al ejecutar ese servicio.

saludos.

Hola Leonel, lo pude solucionar,

el problema lo tenía en cliente.ini en la linea “auth_tipo = any” le puse digest y funcionó
ahora si empiezo a trabajar con los webservice cualquier duda les consulto

saludos
gracias

perfecto!!!