【问题标题】:How can I disable specified request to refresh session timeout in spring/servlet/struts2 framework?如何在 spring/servlet/struts2 框架中禁用指定的刷新会话超时请求?
【发布时间】:2022-01-14 20:02:17
【问题描述】:

情况如下: 我在 tomcat 中运行一个 web 应用程序,会话超时是 15 分钟。

所以所有请求都会刷新它的会话超时。

我有一个来自前端的请求,路径为“/not/refresh/sessiontimeout”

我希望“/not/refresh/sessiontimeout”请求不要刷新会话超时。

如何实现?

【问题讨论】:

    标签: java spring http tomcat servlets


    【解决方案1】:

    你不能,但你可以修改会话的长度以获得类似的效果:

    final HttpServletRequest req = ...;
    final HttpSession session = req.getSession();
    final long idleTimeMs = Instant.now().toEpochMilli() - session.getLastAccessedTime();
    final int maxInactiveSec = session.getMaxInactiveInterval() - (int)(idleTimeMs / 1000);
    session.setMaxInactiveInterval(maxInactiveSec);
    

    【讨论】:

    • 谢谢,我也在考虑类似的解决方案,会试一试。
    猜你喜欢
    • 1970-01-01
    • 2017-01-03
    • 2011-05-08
    • 1970-01-01
    • 1970-01-01
    • 2012-01-26
    • 2011-06-25
    • 2016-02-09
    • 2013-05-27
    相关资源
    最近更新 更多