一尘不染

Tomcat如何在内部处理会话?

tomcat

据我了解,Servlet容器使用一些HTTP协议来处理会话,例如,

  1. 隐藏表格栏位
  2. URL重写
  3. cookie

我很好奇 Apache Tomcat 如何在内部处理会话,尽管它与一般开发人员无关。

Tomcat是否也在使用cookie或其他?


阅读 168

收藏
2020-06-16

共1个答案

一尘不染

默认情况下,Tomcat会在HTTP响应中直接发送cookie,就像SETCOOKIE:JSESSIONID....返回浏览器一样,并重写URLJSESSIONID以便在第一个请求中在其中添加参数,以便在客户端禁用 cookie 的情况下可以稍后再使用。浏览器。

如果浏览器请求服务器与下一次JSESSIONIDrequest,Tomcat将使用JSESSIONID的cookie维持会话。

您可以通过修改 context.xml 来覆盖Tomcat中的会话cookie行为:

<Context cookies="false">
</Context>

并以相同的方式禁用url重写:

<Context disableURLRewriting="true">
</Context>

甚至阅读此带有Cookie的Servlet会话跟踪(JSESSIONID)

2020-06-16