Laravel Redirect не работает в обработчике событий / слушателе
У меня есть класс обработчика событий Auth.Attempt, который я определяю пользователявход в систему пытается решить заблокировать пользователясчет. Однако, когда я попытался перенаправить пользователя на страницу входа с помощью флеш-сообщения, я обнаружил, что перенаправление не работает,Все еще продолжаем следующий шаг. Я хочу прервать процесс в событии и дать свое специальное предупреждающее сообщение. Может кто-нибудь мне помочь? Большое спасибо.
Мой обработчик событий:
namespace MyApp\Handlers\Security;
use DB;
use Session;
use Redirect;
class LoginHandler
{
/**
* Maximum attempts
* If user tries to login but failed more than this number, User account will be locked
*
* @var integer
*/
private $max_attemtps;
/**
* Maximum attempts per IP
* If an IP / Device tries to login but failed more than this number, the IP will be blocked
*
* @var integer
*/
private $ip_max_attempts;
public function __construct()
{
$this->max_attempts = 10;
$this->ip_max_attempts = 5;
}
public function onLoginAttempt($data)
{
//detection process.......
// if login attempts more than max attempts
return Redirect::to('/')->with('message', 'Your account has been locked.');
}
}
Теперь, как я делаю это, как показано ниже:
Session::flash('message', 'Your account has been locked.');
header('Location: '.URL::to('/'));
Это работает, но я не уверен, если этоидеальный способ сделать это.