これはlaravelパッケージで初めての試みで、ログインコントローラ内でAuth :: attempt($ credentials)が動作する問題に遭遇しましたが、保護されたルートまたはコントローラへのリダイレクト時に、ユーザーはもはや認証されません。以下はダッシュボードへのリダイレクトをコメントアウトしたログインコントローラメソッドです。ユーザー認証がLaravelパッケージ内に残っていません
public function attempt(Request $request){
$email = strtolower(strip_tags(htmlspecialchars($request->input('email'))));
$password = strip_tags(htmlspecialchars($request->input('password')));
if (Auth::attempt(array('email' => $email, 'password' => $password)))
{
// Redirect to dashboard route
//return redirect()->intended('/admin');
if(Auth::check())
print_r(Auth::user());
}
}
有効な資格情報への応答が正しいユーザーレコードを出力し、Auth :: checkがtrueを返します。しかし、管理コントローラにリダイレクトされると、ユーザは認証されません。以下は、認証されたユーザを出力するが、「記録されない」だけを返すadminコントローラメソッドです。
public function index()
{
if(Auth::check()) print_r(Auth::user());
else echo "not logged";
}
両方のコントローラが認証を使用;,彼らの名前空間は、ベンダー/パッケージ/ pathToDirと一致している、dbが正しく設定され、暗号化キーが設定されています。何がうまくいかないかに関するアイデアは?ありがとう
あなたは私の一日を保存しました! 'routes/web.php'内のデフォルトルートについては、Laravelは" web "というミドルウェアグループ全体を適用します。 このグループは、サービスプロバイダのメソッド '$ this-> loadRoutesFrom(__ DIR __。 '/ routes.php');によってロードされた外部パッケージルートには適用されません。 –