Как избежать использования jsessionid?

#java #session-cookies #jsessionid

#java #сеансовые файлы cookie #jsessionid

Вопрос:

Я слышал, что ebay использует Java, но я не нашел cookie jsessionid при входе в систему.

Существуют ли альтернативные методы для отслеживания сеансов пользователей? Как избежать использования jsessionid?

Комментарии:

1. Согласно FireCookie s , файл cookie на ebay имеет время жизни сеанса и HttpOnly атрибут — я предполагаю, что это JSESSIONID скрыто.

2. Имя файла cookie также может быть настроено на стороне сервера.

Ответ №1:

Для достижения этой цели может быть много разных вариантов. Самое простое, что я могу придумать, — это сохранить ваш собственный файл cookie и использовать memcache (или аналогичный) для обмена данными сеанса между всеми вашими серверами.

С этим решением у вас нет проблемы с тем, что ваш сеанс работает только на одном сервере.

Ответ №2:

Я только что проверил, что ebay фактически создал 7 файлов cookie, из которых срок действия 4 истекает, как только я закрываю браузер (один или несколько из них могут быть предназначены для управления сеансами).

Чтобы сохранить информацию о пользовательском сеансе на HTTP, который не имеет состояния, сервер должен предоставить клиенту уникальную идентификацию, которая должна использоваться в последующих запросах к серверу для идентификации его как того же клиента. Эта уникальная идентификация в основном сохраняется в виде файлов cookie, иногда передается снова и снова в качестве параметра запроса или вы можете использовать любой другой подходящий метод, чтобы идентификация не была потеряна.

Насколько я знаю, автоматическую настройку JSESSIONID можно отключить в приложении JSP и использовать наш собственный метод управления сеансами.

<%@ page session="false" %>