【问题标题】:SignalR Self Hosted w. Owin IIS - Connected but Recieving Null ResponsesSignalR 自托管 w。 Owin IIS - 已连接但接收空响应
【发布时间】:2017-10-20 00:16:40
【问题描述】:

我有一个 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());
        }

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

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

我是否遗漏了一些明显的东西? 为什么这在本地有效,但在开发/托管环境中无效?

【问题讨论】:

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


    【解决方案1】:

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

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

    【讨论】:

      猜你喜欢
      • 2013-07-09
      • 2015-12-16
      • 2013-05-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多