Skip to content
Advertisement

Laravel Http request to route sends forever

I want to have a link in an email that send to the user, the link is the url of the site and has an api token for the user to authenticate with.

however I am trying to send an api request to get the user details so I can authenticate the user and redirect them to the relavent page, however doing this I end up with a request the spins endlessly.

what could be the issue and if there are any other solutions please let me know.

the link/request looks like this

http://localhost:8005/api/token?_token=<API TOKEN>

The controller that handles the request

<?php
namespace AppHttpControllers;
use Auth;
use IlluminateHttpRequest;
use IlluminateSupportFacadesURL;
use IlluminateSupportFacadesHttp;

class PassportController extends Controller
{
    function getToken(Request $request)
    {
        // return $request->_token;
       return $user = Http::withToken($request->_token)->get('http://localhost:8005/api/user');
       Auth::login($user);
       return redirect('/dashboard');

    }
}

Also when I send the request it gets stuck and I have to restart my php artisan serve again to make more requests, and every time i do so, It opens up on a new port, 8001,8002,8003 etc

Advertisement

Answer

You can make a call back to the app itself like this:

$tokenRequest = Request::create('/api/user', 'GET', ['name' => 'value']);
$tokenResult = app()->handle($tokenRequest);

Update the variables to match your implementations.

User contributions licensed under: CC BY-SA
3 People found this is helpful
Advertisement