- Приложение для входа в систему - развернуто по адресу: http://192.168.1.5:8080/login/ http://192.168.1.5:8080/home/
. Ожидаемый поток:
- Пользователь обращается к приложению для входа в систему, вводит учетные данные и на успех перенаправлен
к приложению home .
из home app , пользователь может нажать «Сильный». Должен: < /p> - Очистить любой сеанс или локальное хранилище. Приложения, я использую перенаправление, как это: < /li>
< /ul>
< /li>
< /ul>и аналогично для журнала: [/b]Код: Выделить всё
dartCopyEditjs.context.callMethod('eval', [ 'window.location.replace("http://192.168.1.5:8080/home/")' ]);Код: Выделить всё
dartCopyEdithtml.window.sessionStorage.clear(); html.window.localStorage.clear(); js.context.callMethod('eval', [ 'window.location.replace("http://192.168.1.5:8080/login/")' ]); < /code> Я также попробовал: < /p> html.window.location.href = ... -
Код: Выделить всё
html.window.location.replace(...) -
Код: Выделить всё
window.open(..., '_self') - , context.go, GoRouter
Код: Выделить всё
Navigator.pushNamed - Handling window.onPopState manually
Even after clearing session/local storage and redirecting to the login Page , нажав кнопку «Задняя часть браузера» возвращается к приложению Home , даже если пользователь технически выходит из строя. Это создает проблему безопасности и UX, тем более что приложение Home было отдельным приложением, ранее открытым через Redirect.
Что мне нужно:
Надежный способ перемещаться между двумя отдельно развернутыми веб -приложениями Flutter (вход в систему и домой на одном и том же сервере. < /P>
. После входа: < /p>
. Перенаправить пользователя на страницу входа в систему. < /P>
. Предотвратите навигацию обратно в приложение Home, используя кнопку Browser's Back. < /P>
. Либо отключите кнопку Browser Back, либо обнаружите навигацию обратно и заставит перенаправление на страницу входа в систему, если сеанс недействителен.>
Подробнее здесь: https://stackoverflow.com/questions/795 ... %86%94-hom
Мобильная версия