SignalR 自托管 w。 Owin IIS - 已连接但收到空响应

SignalR Self Hosted w. Owin IIS - Connected but Recieving Null Responses

我有一个 SignalR 应用程序和一个控制台应用程序。

我 运行 IIS 上的我的 SignalR 应用程序。

我有一个连接的控制台应用程序,在收到响应时应该打印出一些非常基本的消息。

在本地,一切正常。

当我向我的开发人员发布 SignalR 应用程序时。框,我突然无法从集线器接收回消息。

我的控制台应用调用集线器方法"CaptureComplete"

        //notify that a specific camera has completed a capture
        public void CaptureComplete(string captureId)
        {
            var g = Guid.NewGuid();
            Clients.All.cameraCaptureCompleteEvent(g.ToString());
        }

上述方法应该 return GUID 作为我的控制台应用程序的字符串。

我的控制台应用程序虽然连接到 SignalR 集线器,但收到空响应。

我是不是遗漏了什么明显的东西? 为什么这在本地有效,但在 dev/hosted 环境中无效?

CaptureComplete 是一种 void 方法,因此它不会 return 任何结果,因此 task.Result 为空。如果您 CaptureComplete return 编辑了一个值,您将能够使用 task.Result 获取该值。您使用 Clients.All.cameraCaptureCompleteEvent(g.ToString()); 向客户端广播的字符串将在 cameraCaptureCompleteEvent 客户端方法的回调中可用。要订阅此回调,您需要调用:

myHub.On<string>("cameraCaptureCompleteEvent", s => Console.WriteLine);