我正在使用 SignalR-1.0.0-rc2。我正在使用跨域 SignalR,因为移动设备上的某些浏览器仍然只允许每个域有两个连接。所以我有一个 SignalR 域和一个网络域。服务器端,它们都是一样的。
我的实现适用于 Opera、Firefox、Chrome、Safari 和 IE10。它不适用于 IE9、IE8 和 IE7。
jQuery.support.cors = true;
var connection = $.connection.globalHub;
$.connection.hub.url = SignalRDomain;
$.connection.hub.logging = true;
$.connection.hub.qs = "UserID="+UserID+"&Login="+UserLogin+"&UserHash="+UserHash;
connection.client.MyLocalFunction = function () {
// do something
}
$.connection.hub.start();
我已经打开了日志记录。IE9/8/7 控制台向我显示了两条 SignalR 跟踪消息:[13:54:37 UTC+0100] SignalR:自动检测到的跨域 URL。[13:54:37 UTC+0100] SignalR:正在与“ http://live.mydomain.de/signalr/negotiate ”协商。
如果我查看调试器的“网络”选项卡,我看不到任何对服务器的调用。所以看起来 SignalR 在调试消息之后就死了。
有任何想法吗?