【问题标题】:Getting 'The ConnectionId is in the incorrect format' when hybrid app connect to SignalR Hub混合应用程序连接到 SignalR Hub 时获取“ConnectionId 格式不正确”
【发布时间】:2016-06-09 19:44:11
【问题描述】:

我在网上做了很多研究,但找不到解决方案。我在 WebAPI 后端创建了一个 SignalR 集线器并启用了 CORS 功能。

我还有一个客户端 (Ionic) 应用尝试连接到 SignalR 集线器以进行实时聊天。问题是当混合应用程序尝试连接到 SignalR 集线器时,我得到了

ConnectionId 的格式不正确。

我在 SignalR 集线器上收到 OnDisconnected 事件,但不是 OnConnected 事件!

这是我的客户端代码(离子):

  • localhost:64965/signalr 是我的 SignalR 集线器
  • SignalR 代理也在 localhost:64965/signalr/hubs 上生成
var signalr_chatHub = $.connection.ChatHub;

signalr_chatHub.client.welcomeMessage = function (message) {
      console.log('WelcomeMessage', message);
};

$.connection.hub.url = "http://localhost:64965/signalr";
$.connection.hub.logging = true;

$.connection.hub.start().done(function () {
      console.log('signal connection connected');
}).fail(function (err) {
      console.log('Could not Connect!', err);
});

Chrome 控制台错误:

public class ChatHub : Hub<IChat>
{
    public override Task OnConnected()
    {
        var connectionId = Context.ConnectionId;

        return base.OnConnected();
    }

    public override Task OnDisconnected(bool stopCalled)
    {
        var connectionId = Context.ConnectionId;

        return base.OnDisconnected(stopCalled);
    }

    public override Task OnReconnected()
    {
        return base.OnReconnected();
    }

    public void WelcomeMessage()
    {
        Clients.All.NewMessage("Welcome");
    }
}

【问题讨论】:

标签: asp.net-web-api ionic-framework signalr


【解决方案1】:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-02-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多