2013-03-23 98 views
0

在我的Firefox引伸我媒体链接实现我的Progresslistener的方法onLocationChange()。正确检测到位置栏中URI的更改。现在我想实现onProgressChange()方法。nsIWebprogressListener.onProgressChange():获取请求的URI

我试图在这里做的:我想检测,当请求定义URI。只是起点,我试图提醒请求的URI:

onProgressChange: function(aWebProgress, aRequest, curSelf, maxSelf, curTot, maxTot) { 
    if (aRequest != null) { 
     var reqName = aRequest.name; 

     alert(reqName); 
    } else { 
     alert("Request is null"); 
    } 
} 

所以,我想请求网站会触发此方法aRequest.name必须是请求页面的URL。而是只存在戒备“为空”多次...

任何人可以帮我在这个问题上?

我的文档阅读,name属性并不一定是请求的URI。有没有更好的方法来获取请求的URI?

谢谢大家多帮忙!

回答

0

的QueryInterface aRequest到nsIChannel并获得.URI.spec上?

+0

谢谢你的回答。我也想到了这种可能性。但问题是,警报声称aRequest为空。所以,也不会有频道......任何想法,为什么aRequest是空的? – kwonilchang

+0

哦,我明白了,你正在碰到'else'分支......如果你想看到请求开始,你有没有试过'onStateChange'而不是'STATE_START'? –

+0

这样做的工作。谢谢! – kwonilchang