我们的(asp.net)系统是更大系统的一部分。它是通过这个更大的系统从javascript中启动的,它通过window.open调用来打开一个新窗口。IE7在一段时间后停止发出网络请求
(不谈,认证数据等通过一个加密的查询字符串参数传递到我们的系统中)
当IE7(遗憾的是该组织已经标准化了这一点),浏览器会使用我们的系统后(导航周围测试页面)一段时间(其间歇),开始不提出网络请求。按F5会导致它显示其加载动画,但实际上没有发生)。
你可以关闭我们的窗口,并返回到更大的系统(在它自己的窗口),它仍然可以正常工作。如果你重新启动我们的系统,新的窗口打开,它看起来像它的加载,但没有请求(用wireshark验证)。系统位于不同的子域中。
这是有趣的事情,如果我启动提琴手,一切都开始正常工作。只要我关闭Fiddler,它就会停止发出网络请求。
该系统是一个相当html/javascript/ajax重系统(每页1MB +),但不应该导致浏览器这样做。很明显,Firefox和Chrome的工作完美:)
让它再次工作的唯一方法是关闭所有的IE窗口,并重新启动。
我禁用了代理服务器,启用它,几乎可以做任何我能想到的事情。
任何人有任何想法?
UPDATE
我设法与小提琴手运行重现它。最初,在工作时,我可以看到小提琴手的所有要求。当它进入“无需请求”模式时(再次注意,没有任何变化,我只是在浏览),我没有看到Fiddler中有任何东西(即没有新请求,没有任何东西)。所有提琴手记录的请求都已完成,因此没有打开的连接。
我们几乎在每台机器上都看到了这一点。浏览大约15页后,开始发生。这可能是一些环境问题吗?我的测试机器是安装有McAfee,IE7的vanilla XP。没有别的东西在运行,IE中没有安装工具栏。
不能有任何的javascript错误,因为页面还没有加载,当这种情况发生时(即我按F5或Ctrl + F5,并没有提出请求) – Gareth 2009-06-23 10:06:54
好吧 - 我想接下来要做的是检查你有IE 7的最新更新。如果你有或不能做到这一点,然后去禁用任何IE插件。通常这些阻止IE正常工作。 – RichardOD 2009-06-23 10:51:53