2016-06-16 2 views
0

私のプロジェクトでは、サーバーはSignalRを介してクライアントに更新をプッシュします。これは、通常はうまく動作しますが、時折、Chromeで私は次のエラーを取得する: enter image description hereChrome MVC4 IHubContextチャンクエラーerrror

私は、接続が早まって閉じている、またはヘッダが適切に設定されていないに関するいくつかの提案を見てきましたが、私はどのようにと途方に暮れています私は自分のコードでこれを設定することができます。 以下の方法(サーバーコードは)私がクライアントに更新を送信する方法の例です。

public void UpdateHubClientsUpdateAvailability(Availability availability) 
    { 

     if (availability.Deleted) 
     { 
      IHubContext hub = GlobalHost.ConnectionManager.GetHubContext<Hubs.UpdateHub>(); 
      LogClients(hub.Clients, "UpdateHubClientsUpdateAvailability"); 
      string update = GetClientUpdateString(availability, false); 
      hub.Clients.All.removeAvailability(new JavaScriptSerializer().Serialize(update)); 
     } 
     else 
     { 
      UpdateHubClientsAppearanceUpdateAvailability(availability); 
     } 
    } 

removeAvailabilityは、クライアント側のJavaScriptメソッドです。 この問題を解決するために上記のコードをどのように変更することができますか? 多くのありがとうございます。

答えて

0

これは通常、接続エラーです。

  1. 物理的な接続が良好であることを確認してください。
  2. コミュニケーションを妨げるファイアウォールやウイルス対策ソフトウェアがないこと。
  3. クライアントからサーバーへのtracertを実行し、タイムアウトが発生していないかどうかを確認します。
  4. クロムのネットワークタブを確認して、リクエストが通過していることを確認します。
  5. また、シグナル・ロギングをオンにして、ハブへの接続が頻繁に失われていて、ブラウザで多くのonReconnectedイベントまたはdisconnectedイベントが発生していないかどうかを確認することもできます。
  6. 最後に、CORSが正しく構成されているクロスオリジン要求を行っているかどうかを確認してください。