platformsh / platformsh-client-php

Platform.sh API client for PHP
https://platform.sh
MIT License
25 stars 27 forks source link

Exception on logout #48

Open vrobert78 opened 3 years ago

vrobert78 commented 3 years ago

Hi,

I have very often an exception when logout is called. Version of the library: 2.4.1

Error is on: https://github.com/platformsh/platformsh-client-php/blob/2.4.1/src/Connection/Connector.php#L211

Here the full stack trace:

Logout crash:json_decode error: Syntax error

#0 /app/vendor/platformsh/client/src/Connection/Connector.php(211): GuzzleHttp\json_decode(Object(GuzzleHttp\Psr7\Stream), true)
#1 /app/vendor/platformsh/client/src/Connection/Connector.php(168): Platformsh\Client\Connection\Connector->revokeTokens()
#2 /app/src/Command/Bench.php(31): Platformsh\Client\Connection\Connector->logOut()
#3 /app/src/Command/Bench.php(140): App\Command\Bench->logout()
#4 /app/vendor/symfony/console/Command/Command.php(258): App\Command\Bench->execute(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#5 /app/vendor/symfony/console/Application.php(934): Symfony\Component\Console\Command\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#6 /app/vendor/symfony/framework-bundle/Console/Application.php(96): Symfony\Component\Console\Application->doRunCommand(Object(App\Command\Bench), Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#7 /app/vendor/symfony/console/Application.php(264): Symfony\Bundle\FrameworkBundle\Console\Application->doRunCommand(Object(App\Command\Bench), Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#8 /app/vendor/symfony/framework-bundle/Console/Application.php(82): Symfony\Component\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#9 /app/vendor/symfony/console/Application.php(140): Symfony\Bundle\FrameworkBundle\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#10 /app/bin/console(44): Symfony\Component\Console\Application->run(Object(Symfony\Component\Console\Input\ArgvInput))
#11 {main}

Looks like as a wrong revoke URL: GuzzleHttp\Exception\ClientException: Client error: POST https://accounts.platform.sh/https://auth.api.platform.sh/oauth2/revoke resulted in a 404 Not Found

Could you help?

Regards,

Vincent