我已经使用serverSentEvents传输成功使用SignalR一段时间了。我刚刚在Windows Server 2012 RC上安装了我的应用程序,现在当我连接SignalR时,正在使用websockets(如您所料)。
它似乎工作正常,除了服务器和浏览器之间有连续的 websocket 流量流 - 大约每秒发送一次大约 90 字节。从 Chrome 的调试器窗口中看,它似乎每次都在发送连接升级请求。
我成功接收了服务器发送的消息,但我的情况似乎比使用长轮询时更糟。浏览器是Chrome版本19.0.1084.52。知道为什么会这样吗?
这归结于我自己的愚蠢 - 但我想我会回答以防其他人有同样的问题。
我构建了解决方案SignalR.Hosting.AspNet,而不是SignalR.Hosting.AspNet45。所以方法AcceptWebSocketRequest抛出了一个NotSupportedException;由于客户端 WebSocket 升级失败,因此大约一秒钟后才重试。
我想在这种情况下,客户端可能会显示错误或其他内容以帮助调试。