1

我已经使用集线器成功实施了SignalR到我的项目中。一切工作正常在每个浏览器。唯一的问题是与IE7。按照设计,IE7只允许2个同时请求到同一个域。 此问题的解决方案是使用子域打开与SignalR的连接。 在您的第一个浏览器选项卡中,您可以使用例如channel1.domain.com和第二个channel2.domain.com等。使用子域的SignalR连接

$.connection.hubs.url = "channel1.domain.com" 

现在的问题是,在对子域的请求中,cookies不会发送,显然我没有通过身份验证。 (我使用表单身份验证)。

我必须改变我对用户进行身份验证的方式。或者也许有人可以给我一个替代解决方案。

+0

您是否解决了此问题?我有同样的问题 – 2014-09-09 11:01:36

回答

0

你应该确保你的cookie掩码包含一个子域(例如,将你的'cookie域'设置为“.domain.com”而不是默认域,只是“domain.com”)。

那样,子域将继承父域cookie。

+0

我也试过。但是SignalR向我的一个子域发出XHR请求。在该请求中,cookies不会被发送。 XHR请求不会将Cookie传递给子域名我认为... – 2012-03-29 12:21:46