这是错误:
RuntimeException:找不到个人访问客户端。请创建一个。在第94行的/var/www/html/pharmacy/vendor/laravel/passport/src/ClientRepository.php文件中
这是我的登录功能:
public function login(Request $request)
{
$request->validate([
'email' => 'required|string|email',
'password' => 'required|string',
'remember_me' => 'boolean'
]);
$credentials = request(['email', 'password']);
if (!Auth::attempt($credentials))
return response()->json([
'message' => 'Unauthorized'
], 401);
$user = $request->user();
$tokenResult = $user->createToken('Personal Access Token');
$token = $tokenResult->token;
if ($request->remember_me)
$token->expires_at = Carbon::now()->addWeeks(1);
$token->save();
return response()->json([
'access_token' => $tokenResult->accessToken,
'token_type' => 'Bearer',
'expires_at' => Carbon::parse(
$tokenResult->token->expires_at
)->toDateTimeString(),
'name' => Auth::user()->name,
'email' => Auth::user()->email,
]);
}
这是我的路线文件api.php
:
Route::group([
'prefix' => 'auth'
], function () {
Route::post('login', 'User\ParticipantAuth@login');
Route::group([
'middleware' => 'auth:api'
], function() {
Route::get('logout', 'User\ParticipantAuth@logout');
Route::get('user', 'User\ParticipantAuth@user');
});
});
我只想在多租户中通过护照包API登录
我从database/migration
复制了护照包创建的所有迁移,并将其放入保存其他迁移的database/migration/tenant
文件夹中。
答案 0 :(得分:3)
在您的应用程序可以发布个人访问令牌之前,您需要创建一个个人访问客户端:
您需要创建一个personal access token
php artisan passport:client --personal
答案 1 :(得分:1)
如果您从未运行过name status update version
plugin name inactive none 5.2.2
plugin name active none 10.4.0
plugin name inactive none 5.65
plugin name inactive none 9.4.8
,并且经常在每次您放下表格时发生。
简单运行php artisan passport:install
,而不必使用php artisan passport:install
标志
答案 2 :(得分:0)
尝试这个php artisan passport:install