Я новичок в пристани, и я пытаюсь разработать небольшое приложение, которое использует различные сервлеты.Одним из таких сервлетов является WebSocketServlet.Сейчас я пытаюсь создать механизм аутентификации, и моя основная идея - использовать стандартную реализацию Jett HttpSession, к которой может обращаться HttpServletRequest.getSession ();
Итак, допустим, я хочу создать небольшое приложение для чата (imречь идет только о серверной части), и давайте скажем, что есть только два сервлета:
- WebSocketServlet для получения и пересылки сообщений чата другим пользователям, которые находятся в той же комнате чата.Здесь есть URL / сервлеты / чат
- . Кроме того, есть второй «нормальный» HttpServlet, называемый AvatarServlet.Функциональность этого сервлета довольно проста: этот сервлет обрабатывает события HTTP POST, чтобы позволить текущему пользователю загружать и изменять свое изображение аватара.URL-адрес / servlets / avatar
Таким образом, сервлет аватара должен обрабатывать HTTP POST только в том случае, если пользователь вошел в систему, что для меня означает, что у пользователя есть действительный HttpSession (конечно, тот же HttpSessionкак сервлет чата).
Мой вопрос: допустим, что пользователь общается в течение 1 часа с помощью сервлета чата, и после этого решает изменить свою аватарку через мой сервлет аватара.Поскольку я работаю с веб-сокетами, страница никогда не перезагружается, и сервлет чата вызывался только в начале (1 час назад) для установления соединения с веб-сокетом.
Так что, я думаю, , даже еслиПользователь был в сети и активен все время, сеанс истекает, когда пользователь пытается использовать сервлет аватара (через 1 час).
Верно ли мое предположение?Кто-нибудь имеет опыт работы с этой темой или знает лучшее решение?
Спасибо