SignalR Self Hosted w。 Owin IIS - 连接但收到空响应

时间:2017-10-19 16:01:42

标签: c# asp.net iis signalr signalr-hub

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

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

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

在本地,一切正常。

当我将SignalR应用程序发布到我的dev时。盒子里,我突然无法收到来自集线器的消息。

我的控制台应用调用了hub方法" CaptureComplete"

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

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

我的控制台应用程序虽然已连接到SignalR中心,但仍会收到空响应。

enter image description here

我错过了一些明显的东西吗? 为什么这在本地工作,而不是在开发/托管环境中工作?

1 个答案:

答案 0 :(得分:0)

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

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