2016-12-05 18 views
0

ユーザーが自動ログアウトして再度ログインしようとすると、自分のリダイレクトをバイパスし、以前にあったページで終了します。 LoginController.phpLaravel 5.3自動ログアウト後にログインする

protected $redirectTo = '/configurepermissions'; 

ユーザーがログインすると、すべてのアクセス権を取得するページにリダイレクトされます。意図的にログアウトするかブラウザを閉じると正しく動作します。一度ログインするとこのページにアクセスし、権限を取得してそこからダッシュボードにリダイレクトします。

ログインがタイムアウトすると、ログイン画面が表示されます。一度ログインすると、前のページに戻りますが、アクセス許可は設定されていません。

ユーザログアウトやタイムアウトのいずれの場合でも、ログイン後に権限ハンドラが常に呼び出されるようにするにはどうすればよいですか?

+0

ハンドラはリクエストごとに呼び出されなければなりません

あなたはリスナーを追加することができます。 –

答えて

1

権限を設定する場合にのみ、そのページにリダイレクトする必要はありません。あなたがドキュメントで見ることができるように

$events->listen('Illuminate\Auth\Events\Login', function (array $data) { 
    // And call your permissions function here 
}); 

するか、

/** 
* The event listener mappings for the application. 
* 
* @var array 
*/ 
protected $listen = [ 
    'Illuminate\Auth\Events\Login' => [ 
     'App\Listeners\Permissions', 
    ], 
]; 

にリスナーを追加します:https://laravel.com/docs/5.3/events#framework-events

+0

それはかなりうまくいった。ありがとう。 – dawgbone98

関連する問題