-
之前写
Http Server
的时候,遇到这样一种情况:当客户端
POST
一段JSON
数据到服务器时,服务器要读取出所有的Http Request Body
的内容。于是便直接用BufferedReader
读取,直到EOF
。但总是会出现SocketTimeoutException
。很明显,是由于客户端发完数据之后,并没有关闭输出流,而是等待服务器段发送Connection:[keep-alive|closed]
字段来判断是否复用连接。所以在服务器端等待EOF
时,客户端也在等待服务器的Response
,由此而引发超时。