dusterio / lumen-passport

Making Laravel Passport work with Lumen
MIT License
655 stars 139 forks source link

502 Bad Gateway when requesting token #108

Closed BogdanHossu closed 5 years ago

BogdanHossu commented 5 years ago

Hello,

When I do a POST request to /oauth/token I receive a 502 Bad Request. I was trying to debug this and I went until point where we trying to fetch the user based on the username in UserRepository.php:45.

That gives me the error: Unsupported operand types Trace: `[2019-07-17 19:13:27] local.ERROR: Symfony\Component\Debug\Exception\FatalThrowableError: Unsupported operand types in /home/vagrant/code/vendor/illuminate/support/Arr.php:219 Stack trace:

0 /home/vagrant/code/vendor/illuminate/database/Query/Builder.php(2832): Illuminate\Support\Arr::flatten(Array)

1 /home/vagrant/code/vendor/illuminate/database/Query/Builder.php(2130): Illuminate\Database\Query\Builder->getBindings()

2 /home/vagrant/code/vendor/illuminate/database/Query/Builder.php(2118): Illuminate\Database\Query\Builder->runSelect()

3 /home/vagrant/code/vendor/illuminate/database/Query/Builder.php(2604): Illuminate\Database\Query\Builder->Illuminate\Database\Query{closure}()

4 /home/vagrant/code/vendor/illuminate/database/Query/Builder.php(2119): Illuminate\Database\Query\Builder->onceWithColumns(Array, Object(Closure))

5 /home/vagrant/code/vendor/illuminate/database/Eloquent/Builder.php(521): Illuminate\Database\Query\Builder->get(Array)

6 /home/vagrant/code/vendor/illuminate/database/Eloquent/Builder.php(505): Illuminate\Database\Eloquent\Builder->getModels(Array)

7 /home/vagrant/code/vendor/illuminate/database/Concerns/BuildsQueries.php(77): Illuminate\Database\Eloquent\Builder->get(Array)

8 /home/vagrant/code/vendor/laravel/passport/src/Bridge/UserRepository.php(45): Illuminate\Database\Eloquent\Builder->first()

9 /home/vagrant/code/vendor/league/oauth2-server/src/Grant/PasswordGrant.php(96): Laravel\Passport\Bridge\UserRepository->getUserEntityByUserCredentials('email@test.io', 'test', 'password', Object(Laravel\Passport\Bridge\Client))

10 /home/vagrant/code/vendor/league/oauth2-server/src/Grant/PasswordGrant.php(54): League\OAuth2\Server\Grant\PasswordGrant->validateUser(Object(Zend\Diactoros\ServerRequest), Object(Laravel\Passport\Bridge\Client))

11 /home/vagrant/code/vendor/league/oauth2-server/src/AuthorizationServer.php(198): League\OAuth2\Server\Grant\PasswordGrant->respondToAccessTokenRequest(Object(Zend\Diactoros\ServerRequest), Object(League\OAuth2\Server\ResponseTypes\BearerTokenResponse), Object(DateInterval))

12 /home/vagrant/code/vendor/dusterio/lumen-passport/src/Http/Controllers/AccessTokenController.php(34): League\OAuth2\Server\AuthorizationServer->respondToAccessTokenRequest(Object(Zend\Diactoros\ServerRequest), Object(Zend\Diactoros\Response))

13 /home/vagrant/code/vendor/laravel/passport/src/Http/Controllers/HandlesOAuthErrors.php(28): Dusterio\LumenPassport\Http\Controllers\AccessTokenController->Dusterio\LumenPassport\Http\Controllers{closure}()

14 /home/vagrant/code/vendor/dusterio/lumen-passport/src/Http/Controllers/AccessTokenController.php(35): Laravel\Passport\Http\Controllers\AccessTokenController->withErrorHandling(Object(Closure))

15 [internal function]: Dusterio\LumenPassport\Http\Controllers\AccessTokenController->issueToken(Object(Zend\Diactoros\ServerRequest))

16 /home/vagrant/code/vendor/illuminate/container/BoundMethod.php(32): call_user_func_array(Array, Array)

17 /home/vagrant/code/vendor/illuminate/container/BoundMethod.php(90): Illuminate\Container\BoundMethod::Illuminate\Container{closure}()

18 /home/vagrant/code/vendor/illuminate/container/BoundMethod.php(34): Illuminate\Container\BoundMethod::callBoundMethod(Object(Laravel\Lumen\Application), Array, Object(Closure))

19 /home/vagrant/code/vendor/illuminate/container/Container.php(576): Illuminate\Container\BoundMethod::call(Object(Laravel\Lumen\Application), Array, Array, NULL)

20 /home/vagrant/code/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(376): Illuminate\Container\Container->call(Array, Array)

21 /home/vagrant/code/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(319): Laravel\Lumen\Application->callControllerCallable(Array, Array)

22 /home/vagrant/code/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(278): Laravel\Lumen\Application->callControllerAction(Array)

23 /home/vagrant/code/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(263): Laravel\Lumen\Application->callActionOnArrayBasedRoute(Array)

24 /home/vagrant/code/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(165): Laravel\Lumen\Application->handleFoundRoute(Array)

25 [internal function]: Laravel\Lumen\Application->Laravel\Lumen\Concerns{closure}(Object(Laravel\Lumen\Http\Request))

26 /home/vagrant/code/vendor/laravel/lumen-framework/src/Routing/Pipeline.php(52): call_user_func(Object(Closure), Object(Laravel\Lumen\Http\Request))

27 /home/vagrant/code/app/Http/Middleware/Json.php(22): Laravel\Lumen\Routing\Pipeline->Laravel\Lumen\Routing{closure}(Object(Laravel\Lumen\Http\Request))

28 /home/vagrant/code/vendor/illuminate/pipeline/Pipeline.php(163): App\Http\Middleware\Json->handle(Object(Laravel\Lumen\Http\Request), Object(Closure))

29 [internal function]: Illuminate\Pipeline\Pipeline->Illuminate\Pipeline{closure}(Object(Laravel\Lumen\Http\Request))

30 /home/vagrant/code/vendor/laravel/lumen-framework/src/Routing/Pipeline.php(32): call_user_func(Object(Closure), Object(Laravel\Lumen\Http\Request))

31 /home/vagrant/code/vendor/illuminate/pipeline/Pipeline.php(104): Laravel\Lumen\Routing\Pipeline->Laravel\Lumen\Routing{closure}(Object(Laravel\Lumen\Http\Request))

32 /home/vagrant/code/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(413): Illuminate\Pipeline\Pipeline->then(Object(Closure))

33 /home/vagrant/code/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(171): Laravel\Lumen\Application->sendThroughPipeline(Array, Object(Closure))

34 /home/vagrant/code/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(108): Laravel\Lumen\Application->dispatch(NULL)

35 /home/vagrant/code/public/index.php(28): Laravel\Lumen\Application->run()`

I am trying already for 3h to figure out the issue but couldn't. Is this a recent error?

Using Lumen 5.8

BogdanHossu commented 5 years ago

Looks like this is not a package issue and is a issue with PHP. Apparently PHP 7.3.1 has some breaking change that was not announced.

More informations can be found here: https://github.com/laravel/framework/issues/26204.

Closing this issue.