我试图了解在哪里可以为到达我的 servlet(或我的所有 servlet)的所有请求配置请求超时?就像我认为的那样,这是一个容器属性吗?另外,这对不同的浏览器有何影响?它们都符合容器规定的参数吗?或者,请求超时时间甚至不是我可以控制的,每个浏览器都自行决定?(只是要清楚我不是在谈论会话超时)
问问题
43275 次
3 回答
7
即使您无法控制客户端超时,您也可以让服务器非常不耐烦:) 例如,在 Tomcat 上,您可以在连接器中执行此操作,
<Connector port="8080"
...
connectionTimeout ="5000"
disableUploadTimeout="false" />
这使服务器只等待 5 秒并关闭连接。浏览器将收到连接关闭错误。您可以将其视为与客户端中的超时相同。
当然,这只适用于超时是由服务器引起的,而不是浏览器和服务器之间的连接问题。
于 2009-09-12T12:31:29.623 回答
3
您无法从服务器控制客户端超时。但是,您可以在长时间运行的操作繁忙时不时将数据发送回客户端。这将防止客户端超时,并可用于向用户显示进度等。将数据写入从响应中获取的 OutputStream 或 Writer,并调用 flush 将部分数据发送到客户端。
于 2009-09-12T10:36:54.980 回答