【问题标题】:Spring 4 Session ManagementSpring 4 会话管理
【发布时间】:2016-05-31 12:05:23
【问题描述】:

我担心 Spring 4 中的会话创建。

当从服务器渲染任何 jsp 页面时,spring 会创建会话。例如 url 是 GET /login,然后 Login.jsp 服务和会话自动创建并发送响应。

它影响了我的会话处理,因为我有在DispatcherServlet 之前执行并检查会话的过滤器。

如果会话未激活,它会重定向到login,但在呈现login.jsp 页面后,它会创建会话。

因此,一旦将页面传递给用户,他的会话就会被激活,并且他可以访问受保护的资源。

我可以通过添加一些令牌来解决这个问题,但是有什么方法可以阻止会话创建吗?

我正在使用 spring 4。我尝试了 SessionCreationPolicy.STATELESS 和其他但没有工作。

如何防止创建会话?

谢谢,
桑迪普

【问题讨论】:

  • 这不是 Spring 问题,而是 JSP 问题。您可以通过搜索 JSP 找到答案。我只用百里香叶。你似乎也在重新发明轮子。您是否考虑过改用 Spring Security?
  • @chrylis 它特定于 spring,因为如果您不使用 spring 并且呈现 jsp 页面容器,除非得到指示,否则永远不会创建会话。我搜索了stackflow,但没有得到这个,因此被问到了。是的,我正在使用弹簧安全性。问题是在发送jsp页面时由spring完成的自动会话创建。如果您需要任何意见,请告诉我
  • 一个 JSP 实际上默认创建一个会话,除非你添加<%@ page session="false" %>。见stackoverflow.com/questions/5515729/…
  • @M.Denium 谢谢它的工作。我认为这个问题与Spring有关。但它是 JSP。再次感谢您节省了我的几天时间。

标签: java spring spring-mvc session


【解决方案1】:

这个问题不是 Spring 特有的。 JSP 默认创建会话。因此,请确保您的 JSP 不会通过设置 <%@page session="false"%> 来隐式执行此操作

【讨论】:

    猜你喜欢
    • 2016-10-26
    • 2020-12-16
    • 2011-09-19
    • 2012-04-30
    • 2016-05-07
    • 1970-01-01
    • 2015-06-23
    • 1970-01-01
    相关资源
    最近更新 更多