我已经尝试了很长时间,但没有很好的结果。
var myObserver = {
observe: function(subject, topic, data)
{
if (topic == "http-on-examine-response")
{
// implement later
}
else if(topic == "http-on-modify-request")
{
// implement later
}
},
QueryInterface : function (id)
{
if (id.equals(Components.interfaces["nsIObserver"]) ||
id.equals(Components.interfaces["nsISupports"]))
{
return this;
}
throw Components.results.NS_NOINTERFACE;
}
};
var obs = new Service("observer-service", "ObserverService");
obs.addObserver(myObserver, "http-on-modify-request", false);
基本上,在 上http-on-modify-request
,我知道如何检查 URI,找出它与哪个窗口(如果有)相关联,以及一堆其他东西。我不知道如何重定向请求,我知道从这里可以实现,因为我可以在发出任何请求之前获得一个 nsIHttpChannel 。
有谁知道该怎么做?:/我已经断断续续地尝试了几个星期,但一无所获。