У меня есть настройка проверки подлинности паспорта, и у меня есть представление, которое требует, чтобы пользователь сначала вошел в систему. Я не уверен, возможно ли это настроить. Вот моя реализация.
LoginController
public function login(Request $request)
{
$request->validate([
'email' => ['required', 'string', 'email'],
'password' => ['required', 'string']
]);
$credentials = request(['email', 'password']);
$credentials = array_merge($credentials, ['status' => \App\User::ACTIVE_STATUS]);
if (!Auth::attempt($credentials)) {
return response()->json([
'message' => 'Unauthorized'
], 401);
}
$user = $request->user();
$tokenResult = $user->createToken('Personal Access Token');
$token = $tokenResult->token;
$token->expires_at = Carbon::now()->addWeeks(1);
$token->save();
return response()->json([
'access_token' => $tokenResult->accessToken,
'expires_at' => Carbon::parse($tokenResult->token->expires_at)->toDateTimeString()
]);
}
Контроллер профиля пользователя
public function index()
{
if (Auth::guard('api')->check()) {
return view('userprofile::index');
} else {
abort(401);
}
}
Я новичок в Laravel и не знаю как (или если ) Я должен продолжить. В текущей ситуации проверка () всегда возвращает false.