我试图通过使用开发人员工具控制台监控网络来调试Internet Explorer 10的问题,但我遇到了奇怪的行为 - 有时控制台只是关闭而且所有记录的流量都丢失了。
更准确地说,呼叫序列如下(这实际上是一个标准的SAML 2.0身份验证流程,IDP上有客户端证书登录):
请注意,初始访问后的所有内容都会自动发生,用户无需点击任何链接或提交某些表单。
自动提交POST表单是这样的:
<html>
<head>
... some head data here...
</head>
<body onLoad="document.forms[0].submit()">
<form name="auto.submit.form">
... some form fields here...
</form>
</body>
</html>
问题出现在第2点之后 - 开发人员工具控制台刚刚关闭,但这似乎不会影响浏览器的实际工作。
我也试过HttpWatch Professional - 我得到了同样的效果 - 插件只是停止录制或完全关闭。 在这种情况下我不能使用Fiddler,因为它阻止我调试实际问题(即在启用Fiddler时它可以工作)。此问题也是IE特有的,因此我无法使用其他浏览器的开发人员工具。
关于那个的任何想法/提示?
更新: 我想我至少知道了一部分问题: 完成到不同区域的导航后,开发人员工具窗口将关闭。 即在我的情况下,步骤2中的主机位于Internet区域,而来自本地Intranet区域中其他步骤的主机,然后在从第2点到第3点的导航完成后关闭开发工具窗口(而不是从重定向到完成1到2)。 不同之处在于,第一个是通过javascript和自提交表单完成的,而另一个只是302重定向响应。
将所有站点添加到本地Intranet区域后,问题停止发生。 仍然是一个谜,似乎是一个IE问题而不是开发工具问题,因为HttpWatch似乎也受其影响。
答案 0 :(得分:10)
IE开发人员工具和HttpWatch是基于流程的,因此如果您使IE创建新流程,您将获得该工具的新实例。在这些情况下,默认情况下会创建新的IE进程:
您从保护模式网站导航到非保护模式网站, 例如从互联网区域到内联网区域
您打开一个新的IE标签或窗口
在他的博客文章中有关于IE流程模型的一些信息:
http://blog.httpwatch.com/2009/04/07/seven-things-you-should-known-about-ie-8/
一种可能的解决方法是将注册表值TabProcGrowth设置为零,如博客文章中所述。