6

Web 应用程序正在发出 HTTP 请求,但我无法理解它是如何发出请求的。它只是在绘制一页后完成。之前的请求中没有 302,也没有任何明显的信息可以告诉我这个请求是如何提出的。

如果我可以设置一个断点,它将在下一个 HTTP 请求即将发送之前停止,这会有所帮助。然后就在页面绘制之后,我会启用它并找出是谁在发送它 Firebug 让我对 XHR (Ajax) 请求执行此操作,但不适用于普通请求。这是一个普通的 HTTP 请求——不是 AJAX 请求。

是否可以使用 chrome 或 IE 中的调试工具来执行此操作?

4

4 回答 4

6

首先我是怎么得到的。

  1. 在浏览器上禁用 javascript - 问题仍然发生,这意味着我可以控制 javascript 发送它。
  2. 将 firefox 上的最大连接数设置为 1,这意味着请求是按顺序发生的,因此我可以缩小我无法解释的请求何时/何地被发送。
  3. 终于找到了这样的HTML视频标签

<video id="my_video" class="video-js" width="313" height="240" controls="controls"        preload="none" poster="#">

这部分poster="#"是罪魁祸首。如果没有要显示的视频,这会向包含页面发送请求。

于 2012-07-09T11:22:32.087 回答
5

在 Chrome DevTools 中,转到Network面板。在最左边的列中按名称查找相应的资源,然后查看Initiator列。它将指定发起资源加载的对象。它可以是Script,在这种情况下,它还将包含指向相应脚本行的超链接,该脚本行加载了资源。解析器启动器也是如此 - 如果它是加载您的资源的那个,它会给您一个指向相应 HTML 行的超链接。

于 2012-06-22T14:17:14.627 回答
0

Chrome 有一个版本的萤火虫。http://getfirebug.com/firebuglite

Fiddler 支持 HTTPS。它仅适用于 Windows,但您没有指定平台。

于 2012-06-14T14:48:28.793 回答
0
  • 从你说的看,如果不是 XHR,那肯定是从上一页跳转过来的 JavaScript 重定向。
  • 禁用 JavaScript 并查看代码,搜索类似的代码
    • location = ...
    • location.href = ...
    • window.location = ...
    • window.location.href = ...等等
  • 或类似于HTML<meta http-equiv="refresh" content="0;URL='http://example.com/'">中的内容。<head>
  • 使用Tamper Data,启用篡改后,您可以逐个发送请求,并在每个请求之前暂停。
  • 此外,您可以使用 Fiddler 查看浏览器发起的所有 HTTP 请求,并进行高级调试(请参阅 bp* 命令)
  • 您也可以转到 FirebugNet panel并单击“Persist”以观察所有请求,即使在重定向之后也是如此。
于 2012-06-15T18:11:02.887 回答