Reputation: 1114
so im using laravel with passport and i am having issues. when i make a post request to my AuthController@login it is giving me a 500 internal server error. Here is what im working with
Im using laragon with apache server and mysql for enviroment. I can make request to my register route with no issues but my login route keeps failing. Not sure what im missing
This is my 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());
}
}
This is my variable stored in .env file
PASSPORT_LOGIN_ENDPOINT="http://traxit-backend2.test/oauth/token"
PASSPORT_CLIENT_ID=2
PASSPORT_CLIENT_SECRET=3xlUZVF1fP5fHOQgXAY2Vd7xrIsGjGNRagcMcfU5
This is my api routes
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');
And this is the log im getting
- GuzzleHttp\Exception\RequestException->() C:\laragon\www\traxit-backend2\vendor\guzzlehttp\guzzle\src\Handler\CurlFactory.php:186
- GuzzleHttp\Handler\CurlFactory->createRejection() C:\laragon\www\traxit-backend2\vendor\guzzlehttp\guzzle\src\Handler\CurlFactory.php:149
- GuzzleHttp\Handler\CurlFactory->finishError() C:\laragon\www\traxit-backend2\vendor\guzzlehttp\guzzle\src\Handler\CurlFactory.php:102
- GuzzleHttp\Handler\CurlFactory->finish() C:\laragon\www\traxit-backend2\vendor\guzzlehttp\guzzle\src\Handler\CurlHandler.php:43
- GuzzleHttp\Handler\CurlHandler->__invoke() C:\laragon\www\traxit-backend2\vendor\guzzlehttp\guzzle\src\Handler\Proxy.php:28
- GuzzleHttp\Handler\Proxy->GuzzleHttp\Handler{closure}() C:\laragon\www\traxit-backend2\vendor\guzzlehttp\guzzle\src\Handler\Proxy.php:51
- GuzzleHttp\Handler\Proxy->GuzzleHttp\Handler{closure}() C:\laragon\www\traxit-backend2\vendor\guzzlehttp\guzzle\src\PrepareBodyMiddleware.php:66
- GuzzleHttp\PrepareBodyMiddleware->__invoke() C:\laragon\www\traxit-backend2\vendor\guzzlehttp\guzzle\src\Middleware.php:30
- GuzzleHttp\Middleware->GuzzleHttp{closure}() C:\laragon\www\traxit-backend2\vendor\guzzlehttp\guzzle\src\RedirectMiddleware.php:70
- GuzzleHttp\RedirectMiddleware->__invoke() C:\laragon\www\traxit-backend2\vendor\guzzlehttp\guzzle\src\Middleware.php:60
- GuzzleHttp\Middleware->GuzzleHttp{closure}() C:\laragon\www\traxit-backend2\vendor\guzzlehttp\guzzle\src\HandlerStack.php:67
- GuzzleHttp\HandlerStack->__invoke() C:\laragon\www\traxit-backend2\vendor\guzzlehttp\guzzle\src\Client.php:277
- GuzzleHttp\Client->transfer() C:\laragon\www\traxit-backend2\vendor\guzzlehttp\guzzle\src\Client.php:125
- GuzzleHttp\Client->requestAsync() C:\laragon\www\traxit-backend2\vendor\guzzlehttp\guzzle\src\Client.php:131
- GuzzleHttp\Client->request() C:\laragon\www\traxit-backend2\vendor\guzzlehttp\guzzle\src\Client.php:89
- GuzzleHttp\Client->__call() C:\laragon\www\traxit-backend2\app\Http\Controllers\AuthController.php:22
- App\Http\Controllers\AuthController->login() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Controller.php:54
- call_user_func_array() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Controller.php:54
- Illuminate\Routing\Controller->callAction() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\ControllerDispatcher.php:45
- Illuminate\Routing\ControllerDispatcher->dispatch() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Route.php:212
- Illuminate\Routing\Route->runController() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Route.php:169
- Illuminate\Routing\Route->run() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Router.php:679
- Illuminate\Routing\Router->Illuminate\Routing{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php:30
- Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Middleware\SubstituteBindings.php:41
- Illuminate\Routing\Middleware\SubstituteBindings->handle() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php:151
- Illuminate\Pipeline\Pipeline->Illuminate\Pipeline{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php:53
- Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Middleware\ThrottleRequests.php:57
- Illuminate\Routing\Middleware\ThrottleRequests->handle() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php:151
- Illuminate\Pipeline\Pipeline->Illuminate\Pipeline{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php:53
- Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php:104
- Illuminate\Pipeline\Pipeline->then() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Router.php:681
- Illuminate\Routing\Router->runRouteWithinStack() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Router.php:656
- Illuminate\Routing\Router->runRoute() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Router.php:622
- Illuminate\Routing\Router->dispatchToRoute() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Router.php:611
- Illuminate\Routing\Router->dispatch() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Foundation\Http\Kernel.php:176
- Illuminate\Foundation\Http\Kernel->Illuminate\Foundation\Http{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php:30
- Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() C:\laragon\www\traxit-backend2\vendor\barryvdh\laravel-cors\src\HandleCors.php:36
- Barryvdh\Cors\HandleCors->handle() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php:151
- Illuminate\Pipeline\Pipeline->Illuminate\Pipeline{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php:53
- Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() C:\laragon\www\traxit-backend2\vendor\fideloper\proxy\src\TrustProxies.php:57
- Fideloper\Proxy\TrustProxies->handle() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php:151
- Illuminate\Pipeline\Pipeline->Illuminate\Pipeline{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php:53
- Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Foundation\Http\Middleware\TransformsRequest.php:31
- Illuminate\Foundation\Http\Middleware\TransformsRequest->handle() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php:151
- Illuminate\Pipeline\Pipeline->Illuminate\Pipeline{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php:53
- Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Foundation\Http\Middleware\TransformsRequest.php:31
- Illuminate\Foundation\Http\Middleware\TransformsRequest->handle() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php:151
- Illuminate\Pipeline\Pipeline->Illuminate\Pipeline{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php:53
- Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Foundation\Http\Middleware\ValidatePostSize.php:27
- Illuminate\Foundation\Http\Middleware\ValidatePostSize->handle() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php:151
- Illuminate\Pipeline\Pipeline->Illuminate\Pipeline{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php:53
- Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode.php:62
- Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode->handle() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php:151
- Illuminate\Pipeline\Pipeline->Illuminate\Pipeline{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php:53
- Illuminate\Routing\Pipeline->Illuminate\Routing{closure}() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php:104
- Illuminate\Pipeline\Pipeline->then() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Foundation\Http\Kernel.php:151
- Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter() C:\laragon\www\traxit-backend2\vendor\laravel\framework\src\Illuminate\Foundation\Http\Kernel.php:116
- Illuminate\Foundation\Http\Kernel->handle() C:\laragon\www\traxit-backend2\public\index.php:55
Upvotes: 0
Views: 3364
Reputation: 1114
The issue to this was that services.passport
in my services
config file did not exist. I put this in my services.php
config file.
'passport' => [
'login_endpoint' => env('TOKEN_LOGIN_ENDPOINT'),
'client_id' => env('TOKEN_CLIENT_ID'),
'client_secret' => env('TOKEN_CLIENT_SECRET'),
],
Upvotes: 0