加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

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

发布时间:2020-12-16 04:29:55 所属栏目:asp.Net 来源:网络整理
导读:我正在尝试跨域工作的基本示例,但我无法让它工作.根据这里的某人 https://github.com/SignalR/SignalR/issues/6,他通过添加一个Access-Control-Allow-Origin标头让它工作. 基本上,我已经在mvc 3应用程序中添加了一个集线器,在web.config中添加了上面的标题,
我正在尝试跨域工作的基本示例,但我无法让它工作.根据这里的某人 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中运行的工作测试项目,我可以发送给你.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读