0

所以我在护照上使用laravel,我遇到了问题。当我向我的 AuthController@login 发出发布请求时,它给了我一个 500 内部服务器错误。这是我正在使用的

我将 laragon 与 apache 服务器和 mysql 一起用于环境。我可以毫无问题地向我的注册路线提出请求,但我的登录路线一直失败。不知道我错过了什么

这是我的 AuthController.php

public function login(Request $request)
{
    $http = new \GuzzleHttp\Client;

    try {
        $response = $http->post(config('services.passport.login_endpoint'), [
            'form_params' => [
                'grant_type' => 'password',
                'client_id' => config('services.passport.client_id'),
                'client_secret' => config('services.passport.client_secret'),
                'username' => $request->username,
                'password' => $request->password,
            ]
        ]);
        return $response->getBody();
    } catch (\GuzzleHttp\Exception\BadResponseException $e) {
        if ($e->getCode() === 400) {
            return response()->json('Invalid Request. Please enter a username or a password.', $e->getCode());
        } else if ($e->getCode() === 401) {
            return response()->json('Your credentials are incorrect. Please try again', $e->getCode());
        }
        return response()->json('Something went wrong on the server.', $e->getCode());
    }
}

这是我存储在 .env 文件中的变量

PASSPORT_LOGIN_ENDPOINT="http://traxit-backend2.test/oauth/token"
PASSPORT_CLIENT_ID=2
PASSPORT_CLIENT_SECRET=3xlUZVF1fP5fHOQgXAY2Vd7xrIsGjGNRagcMcfU5

这是我的 api 路线

Route::middleware('auth:api')->get('/user', function (Request $request) {
    return $request->user();
});

Route::post('/login', 'AuthController@login');
Route::post('/register', 'AuthController@register');
Route::middleware('auth:api')->post('/logout', 'AuthController@logout');

这是我得到的日志

  1. GuzzleHttp\Exception\RequestException->() C:\laragon\www\traxit-backend2\vendor\guzzlehttp\guzzle\src\Handler\CurlFactory.php:186
  2. GuzzleHttp\Handler\CurlFactory->createRejection() C:\laragon\www\traxit-backend2\vendor\guzzlehttp\guzzle\src\Handler\CurlFactory.php:149
  3. GuzzleHttp\Handler\CurlFactory->finishError() C:\laragon\www\traxit-backend2\vendor\guzzlehttp\guzzle\src\Handler\CurlFactory.php:102
  4. GuzzleHttp\Handler\CurlFactory->finish() C:\laragon\www\traxit-backend2\vendor\guzzlehttp\guzzle\src\Handler\CurlHandler.php:43
  5. GuzzleHttp\Handler\CurlHandler->__invoke() C:\laragon\www\traxit-backend2\vendor\guzzlehttp\guzzle\src\Handler\Proxy.php:28
  6. GuzzleHttp\Handler\Proxy->GuzzleHttp\Handler{closure}() C:\laragon\www\traxit-backend2\vendor\guzzlehttp\guzzle\src\Handler\Proxy.php:51
  7. GuzzleHttp\Handler\Proxy->GuzzleHttp\Handler{closure}() C:\laragon\www\traxit-backend2\vendor\guzzlehttp\guzzle\src\PrepareBodyMiddleware.php:66
  8. GuzzleHttp\PrepareBodyMiddleware->__invoke() C:\laragon\www\traxit-backend2\vendor\guzzlehttp\guzzle\src\Middleware.php:30
  9. GuzzleHttp\Middleware->GuzzleHttp{closure}() C:\laragon\www\traxit-backend2\vendor\guzzlehttp\guzzle\src\RedirectMiddleware.php:70
  10. GuzzleHttp\RedirectMiddleware->__invoke() C:\laragon\www\traxit-backend2\vendor\guzzlehttp\guzzle\src\Middleware.php:60
  11. GuzzleHttp\Middleware->GuzzleHttp{closure}() C:\laragon\www\traxit-backend2\vendor\guzzlehttp\guzzle\src\HandlerStack.php:67
  12. GuzzleHttp\HandlerStack->__invoke() C:\laragon\www\traxit-backend2\vendor\guzzlehttp\guzzle\src\Client.php:277
  13. GuzzleHttp\Client->transfer() C:\laragon\www\traxit-backend2\vendor\guzzlehttp\guzzle\src\Client.php:125
  14. GuzzleHttp\Client->requestAsync() C:\laragon\www\traxit-backend2\vendor\guzzlehttp\guzzle\src\Client.php:131
  15. GuzzleHttp\Client->request() C:\laragon\www\traxit-backend2\vendor\guzzlehttp\guzzle\src\Client.php:89
  16. GuzzleHttp\Client->__call() C:\laragon\www\traxit-backend2\app\Http\Controllers\AuthController.php:22
  17. App\Http\Controllers\AuthController->login() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Controller.php:54
  18. call_user_func_array() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Controller.php:54
  19. Illuminate\Routing\Controller->callAction() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\ControllerDispatcher.php:45
  20. Illuminate\Routing\ControllerDispatcher->dispatch() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Route.php:212
  21. Illuminate\Routing\Route->runController() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Route.php:169
  22. Illuminate\Routing\Route->run() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Router.php:679
  23. Illuminate\Routing\Router->Illuminate\Routing{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php:30
  24. Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Middleware\SubstituteBindings.php:41
  25. Illuminate\Routing\Middleware\SubstituteBindings->handle() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php:151
  26. Illuminate\Pipeline\Pipeline->Illuminate\Pipeline{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php:53
  27. Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Middleware\ThrottleRequests.php:57
  28. Illuminate\Routing\Middleware\ThrottleRequests->handle() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php:151
  29. Illuminate\Pipeline\Pipeline->Illuminate\Pipeline{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php:53
  30. Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php:104
  31. Illuminate\Pipeline\Pipeline->then() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Router.php:681
  32. Illuminate\Routing\Router->runRouteWithinStack() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Router.php:656
  33. Illuminate\Routing\Router->runRoute() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Router.php:622
  34. Illuminate\Routing\Router->dispatchToRoute() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Router.php:611
  35. Illuminate\Routing\Router->dispatch() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Foundation\Http\Kernel.php:176
  36. Illuminate\Foundation\Http\Kernel->Illuminate\Foundation\Http{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php:30
  37. Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() C:\laragon\www\traxit-backend2\vendor\barryvdh\laravel-cors\src\HandleCors.php:36
  38. Barryvdh\Cors\HandleCors->handle() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php:151
  39. Illuminate\Pipeline\Pipeline->Illuminate\Pipeline{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php:53
  40. Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() C:\laragon\www\traxit-backend2\vendor\fideloper\proxy\src\TrustProxies.php:57
  41. Fideloper\Proxy\TrustProxies->handle() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php:151
  42. Illuminate\Pipeline\Pipeline->Illuminate\Pipeline{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php:53
  43. Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Foundation\Http\Middleware\TransformsRequest.php:31
  44. Illuminate\Foundation\Http\Middleware\TransformsRequest->handle() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php:151
  45. Illuminate\Pipeline\Pipeline->Illuminate\Pipeline{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php:53
  46. Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Foundation\Http\Middleware\TransformsRequest.php:31
  47. Illuminate\Foundation\Http\Middleware\TransformsRequest->handle() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php:151
  48. Illuminate\Pipeline\Pipeline->Illuminate\Pipeline{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php:53
  49. Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Foundation\Http\Middleware\ValidatePostSize.php:27
  50. Illuminate\Foundation\Http\Middleware\ValidatePostSize->handle() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php:151
  51. Illuminate\Pipeline\Pipeline->Illuminate\Pipeline{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php:53
  52. Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode.php:62
  53. Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode->handle() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php:151
  54. Illuminate\Pipeline\Pipeline->Illuminate\Pipeline{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php:53
  55. Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php:104
  56. Illuminate\Pipeline\Pipeline->then() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Foundation\Http\Kernel.php:151
  57. Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Foundation\Http\Kernel.php:116
  58. Illuminate\Foundation\Http\Kernel->handle() C:\laragon\www\traxit-backend2\public\index.php:55
4

1 回答 1

0

问题在于services.passport我的services配置文件中不存在。我把它放在我的services.php配置文件中。

'passport' => [
        'login_endpoint'  => env('TOKEN_LOGIN_ENDPOINT'),
        'client_id'    => env('TOKEN_CLIENT_ID'),
        'client_secret' => env('TOKEN_CLIENT_SECRET'),
    ],
于 2019-05-21T20:05:53.037 回答