我们在暂存环境中遇到了一个问题,SignalR 认为请求来自另一个域。因此,我们暂时启用了 CORS……但是,我们意识到我们被降级为长轮询,这意味着我们无法保持服务器关联。
我们正在使用 .NET 4 / SignalR 1.2.2,我们的请求通过 F5 负载均衡器。我们正在尝试调试此问题、获取日志并禁用 CORS 以获取确切的详细信息。我试图用“ http://domainname.com/signalr ”映射一个集线器,但它没有用。该应用程序启动时没有抱怨,但我无法再连接到信号器。由于我们使用的是 .NET 4,因此我们无法转而使用最新版本 / WebSockets。
指示 SignalR 允许一系列域的最佳方法是什么?(我也尝试过多次调用地图集线器,但都失败了)。
更新:
经过进一步调查,我意识到该应用程序可以在内部和外部访问。SignalR 似乎绑定到机器名称。因此,一切都在本地 url 上运行。但是,当我们从 F5 负载均衡器转发的外部域发出请求时,SignalR 认为这是一个跨站点请求......理论上在这种情况下并非如此。
这可能是F5问题吗?
有没有办法让 SignalR 在不降级到 longPolling 的情况下允许某些域?