我正在编写一个吐出一些 HTML 的服务器,但我遇到了 Chrome 和 Firefox 的问题。这是重要的代码片段
...
TcpListener listener = new TcpListener(IPAddress.Any, 12345);
listener.Start();
TcpClient client = listener.AcceptTcpClient();
client.ReceiveTimeout = 1000;
client.SendTimeout = 1000;
NetworkStream stream = client.GetStream();
stream.ReadTimeout = 1000;
...
StreamWriter sw = new StreamWriter(stream);
sw.Write(response);
sw.Flush();
System.Threading.Thread.Sleep(1000);
sw.Close();
stream.Close();
client.Close();
响应只是纯 HTML .... ,没有任何标题或其他元数据(也许这就是问题?)。现在发生的事情是这样的:
场景 1 - 有一个睡眠(1000);
Chrome 完美运行,我得到了完整的 HTML 显示并且它运行正常。Firefox 工作,但 1 秒后我得到一个问题加载页面 - 连接被重置
场景 2 - 没有睡眠(1000);
Firefox 完美运行,我得到了完整的 HTML 显示并且它运行正常。Chrome 不显示数据或数据不完整,页面“冻结”,我无法标记任何内容或单击任何按钮。
有没有可能的解决方案?