Laravel API промежуточного программного обеспечения всегда возвращает ноль, даже с правильным токеном - PullRequest
0 голосов
/ 13 января 2020

Я просто использую API по умолчанию, который laravel предоставил небольшое изменение, когда я делаю проект,

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

Я уже делаю api_token в таблице пользователей и заполняю его некоторым токеном Когда я использую Почтальон API работает Почтальон

Но когда я пишу код запроса в контроллере, он всегда возвращает нуль

$token = 'abcde';
$request = Request::create('/api/user', 'GET', [
'Accept' => 'application/json',
'Authorization' => 'Bearer '.$token,
]);
$response = json_decode(Route::dispatch($request)->getContent());
dd($response);

API работает, если я не использую middleware (' auth: api ') Любое предложение?

РЕДАКТИРОВАТЬ Я пытался использовать Guzzle и получить эту ошибку Ошибка Guzzle

1 Ответ

0 голосов
/ 13 января 2020

Попробуйте с Guzzle

$client = new \GuzzleHttp\Client();
$token = 'abcde';
$request = $client->request('api/user', 'GET', [
        'Accept' => 'application/json',
        'Authorization' => 'Bearer '.$token,
        ]);
$response = $request->getBody()->getContents();
$response = json_decode($request,true);
dd($response);
...