我正在开发单页 Web 应用程序。我已经包含了一个 java 过滤器来拦截 html 页面请求。因此,在此过滤器中,我使用 request.getSession()
创建了一个 session 。
然后我显式设置 JSESSIONID
cookie,因为我必须在响应 header Set-Cookie
中设置 HttpOnly
标志以防止 XSS 攻击通过客户端的 document.cookie
。
现在登录后我需要 session ,所以我使用 request.getSession()
访问 session 。并根据 HttpServletRequest
javadoc HttpServletRequest javadoc
request.getSession() returns the current session associated with this request, or if the request does not have a session, creates one.
但是我在登录后得到了一个不同的 session 。
最佳答案
如果您使用相同的浏览器请求应用程序,我将重新运行相同的 session ,如果您从另一个浏览器请求,它将返回新的 session 。
关于java - 为什么 request.getsession() 不返回相同的 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22068989/