Laravel 5.3 Персональный токен доступа 500

Я пытаюсь настроить свой собственный API с помощью Passport (ну, я уже на полпути, просто нужно создать свою аутентификацию). Всякий раз, когда я пытаюсь создать личный токен доступа на панели управления Passport (/ home route), я получаю сообщение «Упс, что-то пошло не так!» ошибка.

Это происходит из моего компонента Vue (PersonalAccessTokens.vue), и моя консоль регистрирует мне внутреннюю ошибку сервера 500 на маршруте Post для хранения токенов личного доступа ...

\ Laravel \ Passport \ Http \ Controllers \ PersonalAccessTokenController @ store - это ответственный метод, но я не могу найти что-то необычное, поскольку я точно следил за видео Laracasts о Passport

Кто-нибудь еще испытывает эту проблему?

TIA!


person Fabian Tjoe A On    schedule 12.11.2016    source источник
comment
Какая ошибка в журнале ошибок ...?   -  person Farkie    schedule 12.11.2016
comment
Ничего, ошибка исходит из моего компонента Vue, я думаю, он должен быть в каталоге / logs, верно? Предполагая, что сервер возвращает 500, он должен быть где-то зарегистрирован.   -  person Fabian Tjoe A On    schedule 12.11.2016
comment
@FabianTjoeAOn, если вы используете открытую консоль разработчика Chrome, перейдите на вкладку network и выполните запрос. Вы должны увидеть запрос, который вы только что выполнили. Щелкните по нему, затем выберите preview на вкладке этого запроса. Это, или просто посмотрите storage/log/laravel.log и увидите трассировку стека :)   -  person Skysplit    schedule 12.11.2016
comment
Ого, спасибо, мои журналы пусты, но я не знал, что вы можете использовать вкладку сети вот так. В строке 66 ClientRepository.php указано ErrorException: Попытка получить свойство не-объекта. Это относится к функции personalAccessClient (): общедоступная функция personalAccessClient () {if (Passport :: $ personalAccessClient) {return Client :: find (Passport :: $ personalAccessClient); } else {return PersonalAccessClient :: orderBy ('id', 'desc') - ›first () -› client; }}   -  person Fabian Tjoe A On    schedule 12.11.2016


Ответы (2)


Я понял.

По-видимому, он не может прочитать мой личный клиент токена доступа, который вы должны сгенерировать при настройке Passport с помощью команды: php artisan passport:install

Выполнение этой команды решает мою проблему.

Ссылка: https://laracasts.com/discuss/channels/laravel/create-personal-access-token-in-laravel-passport-is-failing

person Fabian Tjoe A On    schedule 12.11.2016

Немного больше информации об этом, так как у меня была такая же проблема. Вам нужно запустить:

php artisan passport:install

каждый раз, когда вы обновляете свои миграции, выполняя:

php artisan migrate:refresh

Чтобы справиться с этим, я только что добавил в package.json скрипт, который использует npm-run-all, поэтому я могу сделать это одной командой:

"scripts": {
  // Other scripts
  "migrate:refresh": "php artisan migrate:refresh",
  "passport:install": "php artisan passport:install",
  "db:refresh": "npm-run-all --sequential migrate:refresh passport:install"
}

Теперь я могу просто делать:

npm run db:refresh

person craig_h    schedule 25.05.2017