firebug可以检测正在进行的ajax操作吗?

时间:2010-12-12 21:32:00

标签: javascript ajax firefox scripting firebug

firebug控制台有各种面板,可以跟踪大量信息。网络面板跟踪几乎所有网络流量,并报告有关该流量的各种信息,例如:标题,延迟,请求参数等。我想要做的是从javascript面板以编程方式访问所有这些信息,因为我有一个脚本需要知道是否有正在进行的请求。我没有找到任何关于各种面板如何互操作或者他们是否彼此了解的文档。我需要使脚本尽可能通用,因此将脚本绑定到页面上的代码是不可取的,因为脚本不会在其他页面上运行,因为函数名称不一样的小怪癖。

3 个答案:

答案 0 :(得分:1)

您要求的是访问Firebug的内部功能,只有在公开API时才能这样做。据我所知,他们不会将API暴露给 javascript ,而不是熟悉的console对象。

然而,他们所拥有的是用于firefox插件开发的API。因此,您可以创建一个firefox插件,然后扩展firebug的Net面板以执行您想要的操作,或者公开另一个名为console.net的javascript对象或类似的东西。

这是一个很好的教程(嗯,是教程系列的一部分),具体说明了如何在网络面板中收听事件:http://www.softwareishard.com/blog/firebug-tutorial/extending-firebug-net-panel-listener-part-viii/

答案 1 :(得分:1)

查看firebug插件NetExport

修改:Here is the source code:

此源代码也可能会让您感兴趣tracingconsole

答案 2 :(得分:0)

据我所知,真正“了解”正在进行的XMLHttpRequests的唯一方法是在代码中明确地“记住”它们。这就像超时和间隔计时器 - 如果你的代码没有挂在句柄上,它就会丢失。

如果有问题的页面通过jQuery或其他一些框架完成所有工作,那么就有可能蠕虫进入该代码并利用所做的任何事情来跟踪ajax工作,但是你究竟如何做这将取决于框架。

如果你要解释更多关于你想用这种技术实现什么的东西,它可能会对你的进步有所帮助。换句话说,虽然您可能无法直接询问,但也许可以找到另一种方法来做任何你想做的事情。