Я устанавливаю атрибут сеанса всякий раз, когда пользователь входит в систему, как это request.getSession().setAttribute(sessionUuid, user);
. sessionUuid
- это uuid, который я устанавливаю. Но похоже, что этот sessionUuid
не является идентификатором сеанса, Redis сам генерирует идентификатор сеанса. Что-то вроде этого
1) "spring:session:expirations:1597563240000"
2) "spring:session:sessions:expires:9dfef52d-d94a-4bcf-a08e-4a362b36f332"
3) "spring:session:sessions:9dfef52d-d94a-4bcf-a08e-4a362b36f332"
Насколько я понимаю, uuid сеанса равен 9dfef52d-d94a-4bcf-a08e-4a362b36f332
для атрибута, который я установил.
Что я пытаюсь понять, так это то, что, поскольку redis генерирует идентификатор сеанса сам по себе, то как я должен получить идентификатор сеанса redis, чтобы в следующий раз, когда пользователь делает запрос, я мог проверить, активен сеанс или нет?
if(request.getSession().getAttribute("9dfef52d-d94a-4bcf-a08e-4a362b36f332") != null) {
return (UserSessionComponent) request.getSession().getAttribute(session);
}
Или Redis ищет весь сеанс для этого конкретного атрибута?