Я пытаюсь создать валидатор для кода аутентификации, который отправляется пользователям по электронной почте. У пользователя есть ссылка в его электронном письме, по которой он должен щелкнуть, который отправляет их на наш веб-сайт для проверки кода.
Валидатор работает и может проверять код аутентификации по своему аналогу в базе данных. Тем не менее, если создан неверный код аутентификации ... пользователь вводит бесконечный цикл перенаправления.
Это потому, что предыдущей страницы на сайте не существует, я предполагаю ...
Есть ли способ изменить URL перенаправления в этой ситуации? Вот функция ...
class User extends Authenticatable
{
public function verifyAuthToken(Request $request, $token)
{
$data = ["token" => $token];
// If this fails, it redirects the user to the previous page automatically.
$result = Validator::make($data, [
'token' => 'required|exists:users,auth_code,id,' . $this->id,
],
[
'token' => 'This verification code is invalid, please restart the process.'
])->validate();
// Validation was successful, remove auth code from user...
$this->auth_code = "";
$this->save();
}
}
Проблема здесь в том, что я вызываю эту функцию, выполняя user-> verifyAuthToken с другого контроллера. Я хочу, чтобы этот вызов автоматически перенаправлял пользователя на определенную страницу ... но поскольку возвращаемое значение не входит в сферу действия контроллера, мы не можем сами выполнить перенаправление ... Валидатор выдает исключение, которое laravel прослушивает и обрабатывает само перенаправление .... Мне просто нужен способ выбрать, куда идет перенаправление ...
Laravel Версия: 5.4.36