Laravel перенаправить на нужную страницу после входа / регистрации - PullRequest
0 голосов
/ 07 апреля 2020

Я новичок в Laravel. Я использую Laravel контроллеры авторизации для входа / регистрации на моем сайте. После входа в систему / регистрации он будет перенаправлен на панель инструментов. Это нормально.

Проблема в том, что пользователь (не авторизованный) отправляет конкретную форму. Отправка формы приведет пользователя на защищенную страницу. Система аутентификации перехватит это (если не вошло в систему) и попросит пользователя войти в систему, и пользователь сможет войти в систему. Но после входа в систему он не будет перенаправлен к фактическому месту назначения. Вместо этого он возвращается на предыдущую страницу. Я попробовал способ redirectto->intended() в промежуточном программном обеспечении. Это все еще не работает.

1 Ответ

0 голосов
/ 08 апреля 2020

Нашел решение. Использовать сеанс HTTP. Я не уверен, что это лучший метод.

  1. POST форма для маршрута, который не требует аутентификации
  2. Проверка и сохранение данных формы в сеансе с использованием контроллер
  3. Перенаправление на защищенный маршрут, где аутентификация будет перехватывать и запрашивать у пользователя логин
  4. После успешного входа перенаправить на исходную страницу назначения, используя return redirect()->intended('defaultPage');
  5. Доступ к данным формы из сеанса внутри блэйд-представления

Я не храню конфиденциальные данные в сеансе. Я понятия не имею, насколько безопасен этот метод. Если у вас есть предложения, пишите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...