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

asp.net – SignalR跨域不在IE10以外的浏览器上工作

发布时间:2020-12-16 03:21:28 所属栏目:asp.Net 来源:网络整理
导读:我正在使用SignalR跨域通信编写Web应用程序.我使用的是最新版本的SignalR,1.0.1.以下是jQuery文档就绪事件中的代码: var connection = $.hubConnection(url); var proxy = connection.createHubProxy(hubName); connection.start().done(function () { prox
我正在使用SignalR跨域通信编写Web应用程序.我使用的是最新版本的SignalR,1.0.1.以下是jQuery文档就绪事件中的代码:

var connection = $.hubConnection(url);
  var proxy = connection.createHubProxy(hubName);

  connection.start().done(function () {
    proxy.invoke('serverMethod');
  });

我尝试在Opera,Firefox,Chrome和IE 10上运行该应用程序.我的操作系统是Windows 7.它在IE 10上运行良好,并且在其他浏览器上不起作用.我使用开发人员工具将IE的模式更改为IE 9,并且它已停止工作.如果我使用SignalR版本0.5.3,相同的代码适用于所有浏览器.

在浏览器的开发人员工具中,我发现以下HTTP状态代码响应协商请求:“HTTP / 1.1 403 Forbidden”.

我在这里错过了什么吗?是什么原因导致IE 10以外的浏览器出现问题?

解决方法

确保在MapHubs调用中启用跨域.

RouteTable.Routes.MapHubs(new HubConfiguration() { EnableCrossDomain = true });

在本地测试跨域时,IE10有一个有趣的功能,可以将任何localhost端口视为不跨域.

(编辑:李大同)

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

    推荐文章
      热点阅读