РАЗРЕШЕННЫЙ. ответ api laravel не показывает

РАЗРЕШЕННЫЙ. ответ api laravel не показывает

21.11.2019 12:14:21 Просмотров 59 Источник

У меня есть некоторые проблемы, когда я хочу вернуть значение из api, когда я использую dd()он покажет результат. Но когда я использую return, он не показывает результат

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

when use dd()

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

nothing to show

Есть идеи, как это показать?

У вопроса есть решение - Посмотреть?

https://stackoverflow.com/questions/58971155/solved-api-response-laravel-doesnt-show#comment104196191_58971155
вы проверили свой метод запроса?
https://stackoverflow.com/questions/58971155/solved-api-response-laravel-doesnt-show#comment104225831_58971155
да, это так. как получить данные, такие же, как при использовании метода dd ()?

Ответы - РАЗРЕШЕННЫЙ. ответ api laravel не показывает / SOLVED. api response laravel doesn't show

lagbox

21.11.2019 12:24:20

Это происходит потому , что вы возвращаете GenericUser, Illuminate\Auth\GenericUser, а не красноречивую модель; вы не используете красноречивую модель для пользовательского провайдера, который использует ваш Guard. Этот класс не имеет никаких средств для сериализации этого объекта в JSON, как это делает модель, и не имеет никаких общих свойств, которые json_encodeмог бы сериализовать.

Если вы json_encodeэтот объект, вы получите пустой объект в нотации JSON:

echo json_encode(new Illuminate\Auth\GenericUser(['id' => 1]));

// {}

Возможно, вы хотите использовать красноречивую модель, такую как App\Userдля аутентификации?

config/auth.php

$providers = [
    ...
    'users' => [
        'dirver' => 'eloquent',
        'model' => App\User::class,
    ],
];

В настоящее время вы используете драйвер 'database'данных" для вашего 'users', поэтому вы получаете GenericUserдля представления вашего пользователя.

https://stackoverflow.com/questions/58971155/solved-api-response-laravel-doesnt-show/58971352#comment104225163_58971352
да, я использую базу данных
https://stackoverflow.com/questions/58971155/solved-api-response-laravel-doesnt-show/58971352#comment104405793_58971352
разрешенный. я меняю водителя на "красноречивый"
Закрыть X