我在signarjavascript客户端中获得了一个未定义的连接id

我在signarjavascript客户端中获得了一个未定义的连接id,javascript,signalr,Javascript,Signalr,根据我遇到的所有文档,我应该能够在连接启动后调用$.connection.hub.id。这是我的代码: var handshake = $.connection.handshakeHub; $.connection.hub.start().done(function () { console.dir($.connection.hub); console.log('connection started with id: ' + $.connectio

根据我遇到的所有文档,我应该能够在连接启动后调用$.connection.hub.id。这是我的代码:

    var handshake = $.connection.handshakeHub;
    $.connection.hub.start().done(function () {
        console.dir($.connection.hub);
        console.log('connection started with id: ' + $.connection.hub.id);
        self.parentConnectionId = document.cookie.replace(/(?:(?:^|.*;\s*)connection\s*\=\s*([^;]*).*$)|^.*$/, "$1");
        handshake.server.connect(self.parentConnectionId, $.connection.hub.id);
    });
我正在成功连接,握手代理连接调用将命中服务器,因此连接不会被轰炸。在连接之后,我还检查了dev工具中的属性,ID仍然没有定义


我在Signalr的2.1和2.2版本中尝试过这个,但没有成功。有人有这方面的经验吗?这真让我受不了。

我是个白痴。在我的解决方案中,代理脚本标记包含在两个不同的位置。删除一个解决了这个问题。

对于其他可能在谷歌上搜索过这个的人(比如我),请确保你已经启动了你的集线器并且它已连接

$.connection.hub.start().done(function () {
    console.log("id : %o", $.connection.hub.id);
});

我尝试过handshake.connection.id,这对我来说很有效