0
我正在写一个服务器,吐出一些HTML,但我遇到了Chrome和Firefox的问题。下面是代码的事项C#Thread.Sleep导致火狐“连接被重置”
...
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浏览器不显示数据或不完整的数据,页面“冻结”,我不能标记任何内容或点击任何按钮。
有没有可能的解决方案呢?
你写你的自己的Web服务器? – 2012-07-19 10:22:19
确保你还要好好照顾安全,因为年纪大的服务器会被黑客攻击 – JohnnBlade 2012-07-19 10:22:49