我使用Google Datastore在servlet中创建了一个登录页面,它运行正常。但有时它会在URL中显示JSESSIONID。
如何阻止JSESSIONID通过URL发送? 为什么它通过URL而不是请求消息?
答案 0 :(得分:2)
在web.xml
。
<session-config>
<tracking-mode>COOKIE</tracking-mode>
</session-config>
这将指示容器客户端支持cookie,因此无需将JSessionId
放入URL中。
答案 1 :(得分:1)
您使用的是response.encodeURL()
吗?如果是这样,请尝试删除它或禁用&#34; URL重写&#34;并检查URL。
另见:
Apache Tomcat Configuration Reference
其他信息:
response.encodeURL(URL)
将;jsessionid=xxxx...
添加到网址。要禁用此功能(=&#34; URL重写&#34;),
Tomcat 7.0或更高版本:
<session-config>
<tracking-mode>COOKIE</tracking-mode>
</session-config>
Tomcat 6.0:
<Context disableURLRewriting="true" ...