解决方法
您可以在Owin Startup类中使用以下配置.
// Make long polling connections wait a maximum of 110 seconds for a // response. When that time expires,trigger a timeout command and // make the client reconnect. GlobalHost.Configuration.ConnectionTimeout = TimeSpan.FromSeconds(40); // Wait a maximum of 30 seconds after a transport connection is lost // before raising the disconnected event to terminate the SignalR connection. GlobalHost.Configuration.disconnectTimeout = TimeSpan.FromSeconds(30); // For transports other than long polling,send a keepalive packet every // 10 seconds. // This value must be no more than 1/3 of the disconnectTimeout value. GlobalHost.Configuration.KeepAlive = TimeSpan.FromSeconds(10); //Setting up the message buffer size GlobalHost.Configuration.DefaultMessageBufferSize = 500;
此外,当您希望始终将客户端连接到服务器时,可以尝试在disconnect hub事件中连接它.
var tryingToReconnect = false; $.connection.hub.disconnected(function () { //Todo: write the logic to reconnect to server. if(!tryingToReconnect) { // notifyclient about disconnection setTimeout(function() { $.connection.hub.start(); },5000); // Restart connection after 5 seconds. } }); $.connection.hub.reconnecting(function() { tryingToReconnect = true; console.log("reconnecting..."); }); $.connection.hub.reconnected(function() { tryingToReconnect = false; console.log("Reconnected"); });
原文地址:https://www.jb51.cc/aspnet/251736.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。