我正在使用Spring會話和Postgres。會話使用JdbcOperationsSessionRepository
保存到我的Postgres數據庫中。爲什麼我的Spring會話不斷從我的JDBC存儲中刪除?
我用於會話的默認非活動時間爲30天。一旦用戶登錄,我做request.getSession().setMaxInactiveInterval()
並將其更改爲180天。
但由於某些原因,180天沒有得到尊重,會話每小時都會被刪除。例如:
本次會議應持續180天但接下來的一個小時開始它得到儘快刪除。
有誰知道我怎麼能阻止這些會話被刪除,讓他們堅持180天?我在猜測this function與此有關。
這裏是我的應用程序,擴展了用戶的最大活動時間間隔的一部分:
private void setupSession(HttpServletRequest request, User user) {
HttpSession session = request.getSession();
session.setMaxInactiveInterval(15552000);
session.setAttribute("user-id", user.id);
}
你能發佈你的配置嗎? – codependent
如果我理解的很好......您希望未記錄用戶的會話過期時間爲30天,並且登錄的用戶爲180天? – codependent
原來這是庫中的一個bug:https://github.com/spring-projects/spring-session/issues/580 – RainSear