Passport laravel createToken 未找到个人访问客户端
Passport laravel createToken Personal access client not found
设置通行证后,我配置并创建了一个控制器来管理注册-登录-和-访问一般外部 post 请求的资源。我不需要特定的客户。但是当我尝试在注册或登录中创建令牌时:
$tokenObj=$user->createToken('APPLICATION')->accessToken;
错误是:
RuntimeException: Personal access client not found. Please create one. in file
C:\xampp7.1\htdocs\passport\vendor\laravel\passport\src\ClientRepository.php
on line 94
Stack trace:
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
我该如何解决?
您必须先创建访问客户端。它被记录在案 here。一个访问客户端与用户令牌不同,您可以有一个访问客户端和许多使用不同密码和令牌的用户。
对我来说,运行
解决了
php artisan passport:install
因为它是在我刷新数据库后发生的。
除了namelivia的评论。正如 Laravel 医生所说:
Before your application can issue personal access tokens, you will
need to create a personal access client. You may do this using the
passport:client command with the --personal option. If you have
already run the passport:install command, you do not need to run this
command:
php artisan passport:client --personal
但是如果你没有运行命令:
php artisan passport:install
你应该先 运行 它。
在 运行 命令之后
php artisan passport:client --personal
并给你这个提示
What should we name the personal access client? [Artisan Personal Access Client]:
不用担心,只需输入任何名称并按回车键即可。
只需运行这个命令
php artisan passport:install --force
我一遍又一遍地遇到同样的错误,但我不知道如何重现它,但我想出了原因。
当您执行 php artisan passport:install
时,它会在 migrate 命令之后将两个客户端 ID 存储在数据库中,但是如果您再次 fresh migrate,很明显你会丢失之前的两个 ID,这就是执行安装命令后显示此错误的原因。
更新
php artisan passport:install -f
将强制为新迁移的数据库重新创建 ID。
我应该打电话吗
php artisan passport:install
每次我运行
php artisan:migrate
有正确的方法吗?
设置通行证后,我配置并创建了一个控制器来管理注册-登录-和-访问一般外部 post 请求的资源。我不需要特定的客户。但是当我尝试在注册或登录中创建令牌时:
$tokenObj=$user->createToken('APPLICATION')->accessToken;
错误是:
RuntimeException: Personal access client not found. Please create one. in file C:\xampp7.1\htdocs\passport\vendor\laravel\passport\src\ClientRepository.php on line 94 Stack trace: 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
我该如何解决?
您必须先创建访问客户端。它被记录在案 here。一个访问客户端与用户令牌不同,您可以有一个访问客户端和许多使用不同密码和令牌的用户。
对我来说,运行
解决了php artisan passport:install
因为它是在我刷新数据库后发生的。
除了namelivia的评论。正如 Laravel 医生所说:
Before your application can issue personal access tokens, you will need to create a personal access client. You may do this using the passport:client command with the --personal option. If you have already run the passport:install command, you do not need to run this command:
php artisan passport:client --personal
但是如果你没有运行命令:
php artisan passport:install
你应该先 运行 它。
在 运行 命令之后
php artisan passport:client --personal
并给你这个提示
What should we name the personal access client? [Artisan Personal Access Client]:
不用担心,只需输入任何名称并按回车键即可。
只需运行这个命令
php artisan passport:install --force
我一遍又一遍地遇到同样的错误,但我不知道如何重现它,但我想出了原因。
当您执行 php artisan passport:install
时,它会在 migrate 命令之后将两个客户端 ID 存储在数据库中,但是如果您再次 fresh migrate,很明显你会丢失之前的两个 ID,这就是执行安装命令后显示此错误的原因。
更新
php artisan passport:install -f
将强制为新迁移的数据库重新创建 ID。
我应该打电话吗
php artisan passport:install
每次我运行
php artisan:migrate
有正确的方法吗?