我发现有一些问题,如何检索FF扩展中网页的每个请求(图像,ajax,初始等)的IP地址。 就像它在Firebug中完成一样。
我尝试了什么:
nsIWebProgressListener只是为我提供了一个请求的主机名。使用dns查找,我可以从主机名获取ip。
ServerSocketListener看起来我必须自己打开一个Server Socket,而ServerSocketListener只是在监听这个Socket。
是否可能?
如果是,我应该使用哪种功能?
答案 0 :(得分:1)
你应该using progress listeners。特别是,获取所有请求的重要方法是onStateChange
:
const Ci = Components.interfaces;
...
onStateChange: function(webProgress, request, flag, status)
{
if ((flag & Ci.nsIWebProgressListener.STATE_START) &&
(flag & Ci.nsIWebProgressListener.STATE_IS_REQUEST) &&
request instanceof Ci.nsIChannel)
{
// Request started
var host = request.URI.host;
...
}
},