SignalR HubConnection 立即无误关闭
SignalR HubConnection closing instantly without error
我正在尝试在 .NET 中使用 SignalR 创建一个既是客户端又是服务器的应用程序。最终目标是将其与我们现有的产品集成,这要求既是客户端又是服务器,因为一台计算机同时充当两者,而其他计算机都是客户端。
在Server启动代码完成后运行Client启动代码中,如下代码为运行:
m_hubConnection = new HubConnection( "http://localhost:8080/" );
m_myHubProxy = m_hubConnection.CreateHubProxy( nameof( ServerHub ) );
m_myHubProxy.On<string, string>( nameof( ServerHub.BroadCastMessage ), ( name, message ) => OnMessageReceived( name, message ) );
m_hubConnection.Closed += OnClosed;
m_hubConnection.Error += OnErrorReceived;
await m_hubConnection.Start(new WebSocketTransport());
await SendMessage( "Startup", "Sending from same thread as connection established" );
几乎立即调用 OnClosed 回调,因此连接在启动时立即关闭。
永远不会调用 OnErrorReceived 回调,因此它不会因任何明显的错误而关闭
Start 方法挂起并且永远不会回调
永远不会命中 SendMessage 方法
理想情况下,我希望连接打开,保持打开状态,点击 SendMessage,向集线器发送消息,然后将相同的消息广播回客户端。
有什么问题吗?
已修复,非常愚蠢的错误。我刚从端口 8080 切换到 8089。我猜其他东西正在使用端口 8080,但不管怎样,将客户端和服务器端都切换到端口 8089 修复了它。
我正在尝试在 .NET 中使用 SignalR 创建一个既是客户端又是服务器的应用程序。最终目标是将其与我们现有的产品集成,这要求既是客户端又是服务器,因为一台计算机同时充当两者,而其他计算机都是客户端。
在Server启动代码完成后运行Client启动代码中,如下代码为运行:
m_hubConnection = new HubConnection( "http://localhost:8080/" );
m_myHubProxy = m_hubConnection.CreateHubProxy( nameof( ServerHub ) );
m_myHubProxy.On<string, string>( nameof( ServerHub.BroadCastMessage ), ( name, message ) => OnMessageReceived( name, message ) );
m_hubConnection.Closed += OnClosed;
m_hubConnection.Error += OnErrorReceived;
await m_hubConnection.Start(new WebSocketTransport());
await SendMessage( "Startup", "Sending from same thread as connection established" );
几乎立即调用 OnClosed 回调,因此连接在启动时立即关闭。
永远不会调用 OnErrorReceived 回调,因此它不会因任何明显的错误而关闭
Start 方法挂起并且永远不会回调
永远不会命中 SendMessage 方法
理想情况下,我希望连接打开,保持打开状态,点击 SendMessage,向集线器发送消息,然后将相同的消息广播回客户端。
有什么问题吗?
已修复,非常愚蠢的错误。我刚从端口 8080 切换到 8089。我猜其他东西正在使用端口 8080,但不管怎样,将客户端和服务器端都切换到端口 8089 修复了它。