2013-09-01 44 views
2

Servlet引擎(例如TomcatJetty)接收到一个HTTP请求,并调用一个包含请求主体的InputStreamHttpServletRequest对象的servlet。在调用servlet之前,servlet引擎是否读取了整个请求?

现在我不知道如果发动机已经阅读从网络整体请求和InputStream是在内存中只是一个缓冲或已读取请求部分当servlet调用InputStream.read实际上读取套接字。

回答

1

通常情况并非如此,因为请求主体可能非常庞大。如果内容长度已知且足够小,则servlet容器可以这样做。

1

至少在POST的情况下,它必须能够根据请求主体中的名称 - 值对形成requestParameterMap。

+0

我很怀疑。它是否真的需要阅读整个身体来创建该地图? – Michael

+0

当然是的。该地图必须以某种方式填充。 – EJP

相关问题