asp.net-mvc-3 – 跨域的SignalR

前端之家收集整理的这篇文章主要介绍了asp.net-mvc-3 – 跨域的SignalR前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试跨域工作的基本示例,但我无法让它工作.根据这里的某人 https://github.com/SignalR/SignalR/issues/6,他通过添加一个Access-Control-Allow-Origin标头让它工作.

基本上,我已经在mvc 3应用程序中添加了一个集线器,在web.config中添加了上面的标题,并创建了一个发送消息的页面.此设置工作正常.
接下来,我在页面上使用相同的客户端javascript创建了一个不同的Web应用程序,但使用以下命令将URL设置为其他服务器:

$.connection.hub.url = 'http://www.myserver.com/signalr';

一旦我使用远程网址,它就会停止工作.

如何让SignalR跨域工作?

更新:
一些补充信息,上面的方法适用于chrome和firefox,但IE9并不喜欢它…

解决方法

我使用一个简单的测试项目和Internet Explorer 9来实现它,但这并不容易,首先我对你描述的相同问题感到困惑.我认为你几乎就在那里,你只是在JavaScript中错过了以下几行:
jQuery.support.cors = true;

这告诉jQuery做跨域调用.看似简单,但真的很难找到;-)

我解释了我在blog post中所做的所有步骤,因为到目前为止我还没有找到关于这个主题的任何现有信息.

告诉我是否还有其他问题.我有一个在Internet Explorer 9中运行的工作测试项目,我可以发送给你.

猜你在找的asp.Net相关文章