如何使用chrome的网络调试器重定向

Leo*_*opd 347 google-chrome http google-chrome-devtools

chrome网络调试器为我提供了为页面加载的所有HTTP资源的绝佳视图.但是只要加载新的顶级HTML页面,它就会清除列表.这使得调试由于某种原因而自动重新加载的页面非常困难(运行脚本或300个响应).

在加载新的顶级页面时,是否可以告诉chrome不要清除网络调试器?或者我可以回去查看上一页的网络资源吗?

或者我可以以某种方式强制chrome在加载新页面之前暂停,当我不控制页面时我正在尝试调试正在进行重定向?这是一个错误的开放式舞蹈的一部分,因此SSL和凭证的组合使得使用命令行工具进行调试变得极其困难.

或者萤火虫可以做我想要的吗?

bfn*_*ncs 490

自v32以来,这已经发生了变化,感谢@Daniel Alexiuc和@Thanatos的评论.


电流(≥v32)

在DevTools的"网络"选项卡的顶部,有一个用于打开"保留日志"功能的复选框.如果选中,则在页面加载时保留网络日志.

Chrome v33 DevTools网络标签:保留日志

左侧的小红点现在可以完全打开和关闭网络日志.


旧版本

在早期版本的Chrome(此处为v21)中,"网络"标签页脚中有一个可点击的红点.

Chrome v22 DevTools网络标签:保留导航时的日志

如果您将鼠标悬停在它上面,它会告诉您,它将在激活时"保留导航时保留".它有希望.

  • @rubenlop88确保你没有过滤*Documents*,否则它们不会在那里继续存在.您可以在*Other*选项卡中专门检查它们. (13认同)
  • 实际上,它现在位于顶部,但称为"保留日志",并且是一个复选框.令人困惑的是,仍然有一个红色记录图标,但这只是是否要记录. (4认同)
  • @boundaryfunctions 我知道,我已经使用它几个星期了,但昨天我将 Chrome 更新到版本 43.0.2357.65,它不再像以前那样工作了。现在,产生重定向的请求被下一个请求所取代,我必须非常快速地单击第一个请求才能在它消失之前查看详细信息。您可以使用最新版本的 Chrome 检查此行为吗?需要明确的是,所有先前的请求都保留在日志中,但产生重定向的请求消失了。 (2认同)

Mat*_*ork 163

我不知道有什么办法迫使Chrome不清除网络调试器,但这可能会实现您的目标:

  1. 打开js控制台
  2. window.addEventListener("beforeunload", function() { debugger; }, false)

这会在通过点击断点加载新页面之前暂停chrome.

  • 这不是问题的正确答案,但它实际上是*我正在寻找的.谢谢. (50认同)
  • 这非常有用,因为如果浏览器在获得响应后立即重定向,则chrome不会显示服务器响应正文. (17认同)
  • 这太光滑了.我来到这里寻找"重定向前暂停"解决方案,现在就是这样.接受的答案更容易记住,但这是rad. (2认同)

s-f*_*s-f 22

只需更新@bfncs答案

我认为围绕Chrome 43的行为有所改变.您仍然需要启用保留日志才能看到,但现在重定向显示在其他选项卡下,当加载的文档显示在Doc下时.

这总是让我困惑,因为我有很多网络的请求,并通过类型XHR,文件,JS等进行过滤,但它在重定向文件选项卡是空的情况下,所以我必须猜测.


Ofe*_*ear 19

在重定向到其他页面之前调试网络调用的另一个很好的解决方案是选择beforeunload事件断点

这样您可以确保在将流重定向到另一个页面之前中断流,这样所有网络调用,网络数据和控制台日志仍然存在.

当您想要检查呼叫的响应时,此解决方案最佳

Chrome beforeunload事件断点

PS:如果您想特定通话或任何通话停车,您也可以使用XHR断点(参见图片示例) XHR断点

  • 这很棒。使用`load`事件,我们可以在开始处停止并轻松设置断点。谢谢! (3认同)