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