检测服务器启动信号器网络套接字 C#



我正在编写一个带有websockets的Web应用程序,可以实时更新数据表。它非常适合那些在我启动 C# 编写的"信号器 websocket 服务器"后启动浏览器的客户端。但是那些在我启动服务器之前启动浏览器的人永远不会连接。有人知道如何做到这一点吗?我必须有手动"连接"按钮之类的东西吗?

/斯塔凡·马特森

您可以使用手动重新连接按钮,也可以简单地继续重试连接,直到服务器可用。像这样:

 var timer = setInterval(function() {
         //Try connecting every 5 seconds
     }, 5000);
然后,成功

连接后,使用 clearInterval(timer) 停止尝试重新连接。

SignalR 将尝试自行自动重新连接,但前提是它首先能够成功连接。

您可以在此处找到有关信号器中连接的非常有用的信息:

处理连接生存期事件

您将找到一种持续重新连接的方法:

$.connection.hub.disconnected(function() {
   setTimeout(function() {
       $.connection.hub.start();
   }, 5000); // Restart connection after 5 seconds.
});

最新更新