如何防止URL中显示JSESSIONID

时间:2017-06-21 10:25:18

标签: java servlets google-cloud-datastore jsessionid

我使用Google Datastore在servlet中创建了一个登录页面,它运行正常。但有时它会在URL中显示JSESSIONID。

如何阻止JSESSIONID通过URL发送? 为什么它通过URL而不是请求消息?

2 个答案:

答案 0 :(得分:2)

web.xml

中添加以下条目
<session-config>
    <tracking-mode>COOKIE</tracking-mode>
</session-config>

这将指示容器客户端支持cookie,因此无需将JSessionId放入URL中。

答案 1 :(得分:1)

您使用的是response.encodeURL()吗?如果是这样,请尝试删除它或禁用&#34; URL重写&#34;并检查URL。

另见:

  • disableURLRewriting

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" ...