javascript - IIS7.5 下的 SignalR webapp 不适用于来自其他 webapp 的 Firefox 访问(跨域)

标签 javascript asp.net .net iis-7.5 signalr

我正在 IIS 7.5 下测试 SignalR(1.1.0) Chat 示例。

我正在尝试从不同的网络应用程序连接到我的 SignalR 网络应用程序(跨域)。

我已经在我的 web.config 中进行了跨域配置,这在 asp.net 开发服务器中工作正常,并在 global.asax 上启用了 cors。

但是,当我将这个项目部署到 IIS 7.5 时,这不起作用。然后我注意到它只适用于 IE 8,不适用于 Firefox。

我的连接如下:

        var connection = $.hubConnection('http://my.webserver.ip/sincronismoSR'),
            chatHubProxy = connection.createHubProxy('chatHub');

        connection.start().done(function() {
                $('#sendmessage').click(function () {
                chatHubProxy.invoke('Send', $('#displayname').val(), $('#message').val());
                $('#message').val('').focus();
            });
        });

我查看了发出的请求,它得到了 200 响应,但答案是空的。

最佳答案

Claudio,我们在一个项目中使用了 SignalR,它运行得非常好。不幸的是,我的研究不够好。当浏览器支持时,我认为 SignalR 是 websockets,但事实是,自从我们在 2008 R2 服务器上运行 .NET 4.0 以来,我们从未有过 websockets。

SignalR websocket 传输需要 .NET 4.5、IIS8、2012Server/Win8,这对于我们的项目来说是 Not Acceptable (目前)。

我环顾四周,在 .NET 堆栈上找到了一些替代方案。最后,我们决定使用 xsockets.NET (http://xsockets.net),此后就再也没有回头。 从 SignalR 转移到 xsockets 真的很容易,而且 xsockets 在所有平台上都支持 websocket。还支持单声道。

唤醒我们的是signalr和xsocket之间的比较:http://xsockets.net/xsockets-vs-signalr

不过 SignalR 上没有阴影。这是一个不错的选择,但由于服务器要求不适合我们。糟糕的是,社区似乎一直认为 SignalR 是实时的。但正如我所说,我们只能怪自己,因为我们没有足够好地阅读文档并且浪费了很多时间:(

祝你好运

关于javascript - IIS7.5 下的 SignalR webapp 不适用于来自其他 webapp 的 Firefox 访问(跨域),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19635639/

相关文章:

c# - 如何检索 X509Store 中的所有证书

c# - 为什么调用默认的aspx?

c# - 容器放在哪里?

javascript - 插入流式 XML 数据数据库

javascript - 第二次单击汉堡包时如何将导航显示设置为无?

javascript - 我如何将列表和整数从 C# 返回到 Javascript

c# - 在 .NET 中处理对象?

.net - 为什么我的 Web 应用程序在调试运行时不使用 Web.Debug.config?

javascript - 带有 python 脚本的 Node.js 应用程序

javascript - Kendo UI 网格始终从第 0 页开始