无法从JavaScript代码访问Tomcat 7 - JSESSIONID cookie

Jef*_* R. 12 jsessionid session-cookies tomcat7

有谁知道Tomcat 6和Tomcat 7之间的配置发生了哪些变化会导致JSESSIONIDcookie无法通过JavaScript访问?

使用Tomcat 6:

alert(document.cookie); // JSESSIONID=8675309ABCDEF...
Run Code Online (Sandbox Code Playgroud)

使用Tomcat 7:

alert(document.cookie); // nothing
Run Code Online (Sandbox Code Playgroud)

Jef*_* R. 13

好的,我找到了答案.的useHttpOnly属性被设置为false默认情况下的Tomcat 6,并且是trueTomcat的7.为<Context>容器设置此属性.

<Context useHttpOnly="false" [...] />
Run Code Online (Sandbox Code Playgroud)

有关从Tomcat 6更新到7的更多信息:从6.0.x迁移到7.0.x.

我不确定为什么我之前没有在文档中看到它,但我已经验证设置这个false实际上会导致Tomcat 7恢复到Tomcat 6的行为.