Servlet引擎(例如Tomcat
或Jetty
)接收HTTP请求并使用HttpServletRequest
对象调用servlet,该对象包含请求正文的InputStream
。
现在我想知道引擎是否已经从网络读取了整个请求,而InputStream
只是内存中的缓冲区,或者它已经部分地读取了请求当servlet调用InputStream.read
时,实际读取套接字。
答案 0 :(得分:1)
通常情况并非如此,因为请求体可能非常庞大。如果内容长度已知且足够小,则servlet容器可以执行此操作。
答案 1 :(得分:1)
至少在POST的情况下,它必须从请求正文中的名称 - 值对形成requestParameterMap。