Jsp 为什么tomcat为每个请求创建会话cookie?
我正在Tomcat上使用JSP/servlets开发一个简单的web应用程序。 我有一个index.jsp页面,显示UI并加载JS代码,重复“轮询”AJAX请求——这很简单 问题在于,每个ajax请求都返回一个新的jsessionid,因此我试图存储在会话对象中的数据每次都会丢失 这个问题不会发生在我直接调用tomcat的开发机器上,它只发生在请求通过Apache的登台/实时环境中(在我的开发机器上,我调用localhost…/path/index.jsp和localhost…/path/ajax.jsp-在live env中,apache将domain.com路由到domain.com/path/index.jsp,并将domain.com/ajax.jsp路由到domain.com/path/ajax.jsp) 我验证了我没有在任何地方配置useHttpOnly参数或useCookies。顺便说一句,我们使用的是tomcat 6 这可能是ApacheTomcat交互问题吗Jsp 为什么tomcat为每个请求创建会话cookie?,jsp,session,tomcat,cookies,Jsp,Session,Tomcat,Cookies,我正在Tomcat上使用JSP/servlets开发一个简单的web应用程序。 我有一个index.jsp页面,显示UI并加载JS代码,重复“轮询”AJAX请求——这很简单 问题在于,每个ajax请求都返回一个新的jsessionid,因此我试图存储在会话对象中的数据每次都会丢失 这个问题不会发生在我直接调用tomcat的开发机器上,它只发生在请求通过Apache的登台/实时环境中(在我的开发机器上,我调用localhost…/path/index.jsp和localhost…/path/aja
感谢您的帮助!这可能是Cookie路径的问题。可能会话Cookie与domain.com/path绑定。但从浏览器的角度来看,路径是domain.com/ 将cookie路径设置为/也会使浏览器向domain.com/发送cookie 你能检查Firebug/Fiddler中的cookies并将内容发布在这里吗 不幸的是,Servlet API是 在创建会话方面相当自由。 各种工具都有默认行为 它可以隐式创建会话 在后台。这对你来说很容易 “意外”的应用程序 创建一个会话,即使在 没有明确要求 例如,JSP通常会创建 一个会话,如果还没有 这允许JSP使用 隐式会话变量。作为第二个 例如,request.getSession() 方法也将自动创建 一个会话,如果还没有 存在 我认为问题的原因已经在上面解释过了请尝试index.jsp顶部的
。如果这样做了,请找到另一种存储值的方法(在请求范围内)