我正在尝试构建一个非常简单的Web服务器。我得到了它的工作。现在我使用InputStream
并在第一行的末尾停止。我想我可以在返回-1时停止(因为那将是流的结束)但它冻结了。为什么呢?
connection=server.accept();
OutputStream out=new BufferedOutputStream( connection.getOutputStream() );
InputStream in = new BufferedInputStream( connection.getInputStream() );
// read in one line
StringBuffer request = new StringBuffer(1000);
System.out.println("get connection reading in data \r");
while(true)
{
int c=in.read();
// if (c=='\r') break;
if (c==-1) break;
request.append((char)c);
}
System.out.println(request);
答案 0 :(得分:3)
您正在等待客户端关闭其连接 - 它不会这样做,因为它正在等待响应!
您需要阅读请求并根据标题完成工作。