2017-06-21 166 views
2

我已經使用Google Datastore在servlet中創建了一個登錄頁面,它工作正常。但有時它會在URL中顯示JSESSIONID。如何防止在URL中顯示JSESSIONID

如何防止JSESSIONID通過URL發送? 爲什麼它通過URL而不是請求消息?

回答

0

您使用的是response.encodeURL()?如果是這樣,請嘗試刪除它或禁用「URL重寫」並檢查URL。

參見:

  • disableURLRewriting

Apache Tomcat Configuration Reference

信息

response.encodeURL(URL)增加;jsessionid=xxxx...到URL。要禁用此(= 「URL重寫」),

的Tomcat 7.0或更高版本:

<session-config> 
    <tracking-mode>COOKIE</tracking-mode> 
</session-config> 

的Tomcat 6.0:

<Context disableURLRewriting="true" ... 
+0

不,我沒有使用'response.encodeURL()', – Prakash

1

添加以下條目在web.xml

<session-config> 
    <tracking-mode>COOKIE</tracking-mode> 
</session-config> 

這將指示客戶端支持cookie,因此沒有必要把JSessionId在URL中的容器。

+0

感謝您的回覆 – Prakash

+0

下一次,請包括鏈接到源代碼中,您發現這些信息而不是關閉,就好像你寫下了頂部。另請參閱https://meta.stackexchange.com/q/160077 – BalusC