Как веб-сайты обычно выходят из системы пользователей и автоматически отправляют их на экран входа в систему, когда срок действия сеанса пользователя истекает? Это делается с помощью ajax или запуска асинхронных обработчиков? Можете ли вы дать мне небольшое объяснение.
Как веб-сайты обычно автоматически выходят из системы пользователей по истечении срока действия сеанса?
Ответы (4)
Используйте cookie, а также сеанс.
- Файл cookie должен быть установлен при запуске сеанса.
- Если файл cookie присутствует, но сеанс завершен, выполните перенаправление на экран
входа в систему. - Если нет сеанса и куки ничего не делать
(извините меня, если вы не можете этого сделать, потому что я никогда не использовал ASP и основываю свой ответ на своих знаниях PHP)
Банки и тому подобное используют тайм-аут на стороне клиента через javascript или что-то подобное. Однако на самом деле сервер обрабатывает фактический сеанс, поэтому, если вы отключите логику на стороне клиента, он будет действовать так, как если бы вы пытались совершать транзакции, не выходя из системы.
Как правило, вы устанавливаете отметку времени истечения срока действия в файле cookie с идентификатором сеанса. Когда cookie не удается отправить, клиент выходит из системы (без заданного идентификатора сеанса).
Этот метод часто сочетается с JavaScript и другим маркером временной метки. Когда таймеры начинают работать, отправляется уведомление, которое позволяет пользователю «обновить» свою сессию... по существу, делая запрос до истечения временной метки сессии.
Запрос на «обновление» может быть любым, даже таким простым, как загрузка изображения.
Если вы используете Tomcat, вы можете использовать его встроенный механизм <security-constraint> в вашем определении web.xml. Все время, экран входа в систему и перенаправления страниц обрабатываются Tomcat без особых усилий с вашей стороны, кроме определений.
О, IIS... неважно.