【问题标题】:SignalR Azure Service DevelopmentSignalR Azure 服务开发
【发布时间】:2019-04-19 14:16:46
【问题描述】:

我一直在尝试查找有关 SignalR Azure 服务实际工作原理的更多信息,但似乎很难找到。无论如何,我一直在做一个实时聊天项目,我有一个关于使用 Azure SignalR 服务进行开发的快速问题。

似乎开发一个 signalR 应用程序应该全部在本地完成。起初只有我自己在做这个项目,一切都进行得非常顺利。几天前,我们为该项目增加了一些团队成员,其中一位开发人员开始接触我设置的中心。从那时起,如果我连接到 Azure 服务以与集线器通信(而不是在本地托管 signalR),我在尝试调用我的任何集线器方法时会遇到一些奇怪且完全随机的错误。我基本上只是得到“调用集线器方法'XXX'时出错。”这些错误甚至几乎不一致,有时我成功调用该方法,有时我没有。

奇怪的是,我的本地集线器没有抛出任何异常甚至错误。它几乎似乎无法一起击中我的中心。

这是我们两个人使用相同的 azure 服务开发但仅在不同分支上修改相同集线器的产品吗?

感谢您的帮助!

【问题讨论】:

    标签: c# .net azure .net-core signalr


    【解决方案1】:

    SignalR 默认不会给你详细的错误信息,你可以通过下面的代码启用它:

    var hubConfiguration = new HubConfiguration();
        hubConfiguration.EnableDetailedErrors = true;
        app.MapSignalR(hubConfiguration);
    

    然后在客户端显示

    $.connection.hub.error(function (error) {
        console.log('SignalR error: ' + error)
    });
    

    同样,您也可以在处理异常时将其添加到 C# 客户端代码中。

    在某些情况下,您甚至无法到达客户端部分来查看错误。但是通过执行第一部分,您将启用详细错误,您可以在 SignalR 响应中看到错误。您只需要一个像 Chrome 浏览器 Web 开发者工具这样的工具,它为您提供了操作的网络部分,其中记录了所有数据传输状态。您可以在那里检查 SignalR 错误。日志上的信息将非常详细和有用。

    有关启用日志和有关 signalR 错误的更多信息,请访问https://docs.microsoft.com/en-us/aspnet/signalr/overview/guide-to-the-api/hubs-api-guide-javascript-client#handleerrors

    希望对你有帮助。

    【讨论】:

      猜你喜欢
      • 2019-10-22
      • 2017-01-13
      • 2020-01-21
      • 2017-10-07
      • 1970-01-01
      • 1970-01-01
      • 2018-12-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多