这是错误:
RuntimeException: Personal access client not found. Please create one. in file /var/www/html/pharmacy/vendor/laravel/passport/src/ClientRepository.php on line 94
这是我的登录功能:
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');
});
});
我只想在 Multi-Tenancy 中通过护照包 API 登录
我从
database/migration
复制了由护照包创建的所有迁移。并将其放入 database/migration/tenant
保存其他迁移的文件夹。
最佳答案
在您的应用程序可以发布个人访问 token 之前,您需要创建一个个人访问客户端:
您需要创建一个 personal access token
php artisan passport:client --personal
关于laravel - 在 Multi-Tenancy (hyn 包)laravel 中通过 API(使用护照)登录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54648886/