Chrome中的ASP.NET MVC4 IHubContext chunking errror

时间:2016-06-16 11:11:53

标签: c# google-chrome asp.net-mvc-4 signalr signalr-hub

在我的项目中,服务器通过SignalR将更新推送到客户端。这通常很有效,但偶尔在Chrome中我会收到以下错误: enter image description here

我已经看到一些关于连接过早关闭或者标头没有正确设置的建议,但我不知道如何在我的代码中设置它。 以下方法(服务器代码)是我如何向客户端发送更新的示例:

 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方法。 有谁知道我怎么能改变上面的代码来阻止这个问题? 非常感谢。

1 个答案:

答案 0 :(得分:0)

这通常是连接错误。

  1. 确保您的物理连接良好。
  2. 没有防火墙或防病毒软件干扰您的通信。
  3. 从客户端到服务器进行跟踪,看看是否有超时。
  4. 检查Chrome中的网络标签,确保您的请求已通过。
  5. 您还可以打开信号器记录,查看是否经常丢失与集线器的连接,并在浏览器中触发大量onReconnected或disconnected事件。
  6. 最后,请确保如果您正在进行正确配置CORS的跨源请求。