Kra*_*ram 5 iframe internet-explorer comet signalr
我在IE9中使用SignalR,不幸的是,它必须降级为使用永久帧连接.
我花了一些时间用IE中的开发者工具来看这个.我可以看到回调加载到动态插入的IFrame中,并且它们在SignalR插件中调用receive函数.然而,大约20/30之后,它只是停止响应 - 我不能再从服务器调用客户端脚本.
我猜测IFrame加载最终超时,但似乎没有为此引发任何事件,因此我无法强制重新连接.
有没有人设法在IE中获得强大的SignalR连接?
谢谢 :)
我们遇到了一个问题,网站上的Javascript会停止工作,特别是我们注意到Ajax调用不起作用.经过一番调查,我们发现SignalR是导致崩溃的原因,我们发现了这篇关于Forever Frames的帖子.我们尝试使用客户端JavaScript中的以下代码删除SignalR中的Forever Frames支持:
$.connection.hub.start({ transport: ['webSockets', 'serverSentEvents', 'longPolling'] });
Run Code Online (Sandbox Code Playgroud)
因此只支持'webSockets','serverSentEvents','longPolling'.
每当我看到这种情况发生时,我实际上都有流氓、僵尸 IE9 进程在后台运行。他们甚至没有与之相关的窗户。因此,我会去杀死那些僵尸并重新启动 IE 的新实例,并且在很长一段时间内不会出现问题,直到任何异常导致问题再次发生。
我知道这听起来很疯狂,但我花了很长时间向 David Fowler 解释问题的症状,以及我如何永远看不到 iFrame 神奇地停止触发事件以使传输知道开始下一个 iFrame 会话的任何原因。SignalR 消息本身总是正确终止逻辑消息流,onreadystatechange 事件将停止触发。
| 归档时间: |
|
| 查看次数: |
6683 次 |
| 最近记录: |