У меня есть несколько основных вопросов по управлению сеансами в GWTP.Управление сеансом сервера в GWTP
- Теперь мы создаем новый сеанс, когда пользователь входит в приложение. Теперь я могу открыть браузер и ввести URL-адрес приложения с токеном непосредственно без входа в систему. Он сделает страницу пользовательского интерфейса пользователем без каких-либо проверок. Теперь у нас есть сеансовые проверки на стороне сервера. Поэтому, если страница пользовательского интерфейса делает вызов сервера только при рендеринге, я узнаю, что сеанс недействителен и я могу перенаправить его на страницу входа. Но как мы обрабатываем случаи, когда страница пользовательского интерфейса не имеет логики на стороне сервера, а пользователь напрямую вставляет URL-адрес с этим токеном.
Должен ли я выполнять вызов сервера на каждый запрос страницы от ведущего GWTP только для проверки сессии? или у нас есть другие подходы к этому?
Я не передаю какой-либо явный идентификатор сеанса от клиента GWT на сервер. Его только JSessionId автоматически передается от браузера к серверу. Мы просто делаем request.getSession() на сервере и видим, является ли оно нулевым или нет (не зарегистрировано, если значение null). Поэтому я надеюсь, что у нас нет проблем с безопасностью. Пожалуйста подтвердите.
С клиентом GWT, работающим на основе логики на стороне android и на стороне сервера, представленной как Restful Web-сервисы с использованием Джерси, как мы поддерживаем сеанс, потому что Restful WS являются апатридами. Теперь, как мы можем достичь пользовательской сессии в этом случае?
Большое спасибо за ваши ценные материалы. Я реализую ту же логику. Я жду третьего вопроса от кого-то и закрою тему позже. – Santosh
У меня есть еще один очень простой вопрос. Извините, если это слишком глупо ... Я получу объект User, как только я закончу с помощью вызова сервера. Но GIN уже создал все объекты в начале, и LoggedInGateKeeper создал бы с нулевым пользователем. Как я могу вставить элемент CurrentUser с возвращаемым значением моего сервера? – Santosh
Вы только что установили аннотацию @NoGatekeeper для домашнего пользователя presenter.set, зарегистрированного пользователем (текущий объект bean-объекта пользователя) при входе в систему. Я думаю, что у вас есть идея для другого ведущего, который предоставит текущему пользователю. И назначить текущему пользователю значение null После выхода из системы. – iMBMT