Паспорт laravel createToken Клиент персонального доступа не найден - PullRequest
5 голосов
/ 14 марта 2019

После настройки паспорта я настроил и создал контроллер для управления регистрацией, входом в систему и доступом к ресурсу для общего внешнего почтового запроса. Мне не нужен конкретный клиент. Но когда я пытаюсь создать токен при регистрации или при входе в систему:

$tokenObj=$user->createToken('APPLICATION')->accessToken;

Ошибка:

RuntimeException: клиент личного доступа не найден. Пожалуйста, создайте один. в файле C: \ xampp7.1 \ HTDOCS \ \ паспорт поставщика \ Laravel \ паспорту \ SRC \ ClientRepository.php на линии 94 Трассировки стека: 1. RuntimeException -> () C: \ xampp7.1 \ htdocs \ passport \ vendor \ laravel \ passport \ src \ ClientRepository.php: 94 2. Laravel \ Passport \ ClientRepository-> personalAccessClient () C: \ xampp7.1 \ htdocs \ passport \ vendor \ laravel \ passport \ src \ PersonalAccessTokenFactory.php: 71

Как я могу это решить?

Ответы [ 3 ]

11 голосов
/ 07 июня 2019

для меня это решено с помощью

php artisan passport:install

потому что это произошло после обновления моей базы данных.

5 голосов
/ 14 марта 2019

Вы должны сначала создать клиентов доступа.Это задокументировано здесь .Клиент доступа - это не то же самое, что пользовательский токен, у вас может быть один клиент доступа и много пользователей с разными паролями и токенами.

0 голосов
/ 24 июля 2019

В дополнение к комментарию namelivia.Как говорит Laravel doc:

Прежде чем ваше приложение сможет выдавать токены личного доступа, вам нужно будет создать клиент личного доступа.Вы можете сделать это используя команду passport: client с параметром --personal.Если вы уже выполнили команду passport: install, вам не нужно запускать эту команду:

php artisan passport:client --personal

Но если вы не запускаете команду:

php artisan passport:install

Вы должны запустить его первым.

...