2013-03-31 38 views
0

我目前正在編寫一個簡單的代理服務器,就像我的瀏覽器(Firefox或Chrome)和Web服務器之間的接口,我設置Firefox將請求發送到特定端口(7777)到此端口獲取請求併發送到互聯網獲取響應。因爲web服務器獲取多個部分中的一個請求的響應(8Kb),我將響應的每個部分發送給瀏覽器,因此,我發送一個響應到Firefox 的問題發送和接收i使用異步套接字發送請求到web服務器立即。 現在,當我把我的請求,包含頭信息的第一部分我沒有問題 但是當我想送我的請求是GZIP我的瀏覽器,其餘募集此異常錯誤發送回覆瀏覽器與套接字

火狐:內容編碼錯誤 您嘗試查看的頁面無法顯示,因爲它使用無效或不受支持的壓縮形式。

Chrome:Error 330(net :: ERR_CONTENT_DECODING_FAILED):未知錯誤。

但是當我把sendcallback睡眠(1000),它正常工作

private void SendCallback(IAsyncResult ar) 
{ 
    try 
    { 
     SendStateObject Result = (SendStateObject)ar.AsyncState; 

     int ByteSend = Result.WorkSocket.EndSend(ar); 
     System.Threading.Thread.Sleep(1000); 
    } 
    catch (Exception ex) 
    { 
     System.Windows.Forms.MessageBox.Show(ex.StackTrace); 
    } 
} 

是什麼問題? 非常感謝

回答