因此,我已经阅读了有关此问题的所有先前问题,但遵循这些步骤似乎对我不起作用。我收到“Access-Control-Allow-Origin 不允许 Origin *”,但这对我来说没有意义。如果我在 Chrome 自己的选项卡中打开相同的请求,并查看网络选项卡,我会看到以下 CORS 标头完好无损。此外,集线器生成得很好。我正在使用 Web API、.NET 4.5 和 SignalR 的 rc2。我还尝试删除 web.config 中的 Allow-Credentials,但这也无济于事。
Access-Control-Allow-Credentials:true
Access-Control-Allow-Headers:x-requested-with,X-CustomAuth,Content-Type,X-Impersonate
Access-Control-Allow-Methods:GET,OPTIONS,PUT,DELETE,HEADER
Access-Control-Allow-Origin:*
我也设置jQuery.support.cors
为true
,即使它已经是真的,我使用的是 JQuery 1.9,这是我与服务器和集线器的连接:
jQuery.support.cors = true;
$.connection.hub.url = 'http://myserver/api/signalr';
$.connection.hub.start({ transport: 'longPolling', xdomain: true });
我也试过这个来连接,两者都有同样的问题。
$.connection('http://myserver/api/signalr/echo').start(function () {
console.log('Connected');
$.connection.hub.start().done(function() {
$log.info('Connected to hub.');
});
});