问题描述
使用持久连接和 ASP.NET JavaScript 客户端,我尝试连接到与提供页面的子域不同的子域.
Using persistent connections and an ASP.NET JavaScript client, I am trying to connect to a sub-domain not the same as the one the page was served from.
ASP.Net 页面想要连接到位于 sub2.mydomain.com
的 SignalR.在同一子域中连接时,相同的代码可以正常工作.
ASP.Net Page from webserver sub1.mydomain.com
wants to connect to SignalR at sub2.mydomain.com
. The same code works fine when connecting within the same sub-domain.
我发现另一个帖子启用了跨域连接:
I found another post where cross-domain connections were enabled with:
jQuery.support.cors = true;
但这对我不起作用.
如何使用持久连接和 JavaScript 客户端连接到第二个子域中的 SignalR?
How can I connect to SignalR in a second sub-domain using persistent connection and a JavaScript client?
推荐答案
您需要执行以下操作之一才能使其工作:
You need to do one of the following to make it work:
- 设置
$.connection.hub.url = 'http://subdomain.domain.com/signalr';
,指向您的子域. 在服务器上启用跨域:
- Set up
$.connection.hub.url = 'http://subdomain.domain.com/signalr';
, pointing to your subdomain. Enable cross domain on the server:
RouteTable.Routes.MapHubs(new HubConfiguration()
{
EnableCrossDomain = true
});
这篇关于如何使用 SignalR 使用跨域连接(CORS - 访问控制允许来源)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!