如何隐藏要显示的URL

时间:2012-01-20 11:43:49

标签: javascript firefox

我正在研究Firefox的协议处理程序,我就像这样调用资源:

var ioservice = Cc["@mozilla.org/network/io-service;1"]
                    .getService(Ci.nsIIOService);
var uri = ioservice.newURI('http://someurl'+someparams, null, null);

问题是我希望用户看到我的协议处理程序 - 比如protocol:params而不是真正的URL。

1 个答案:

答案 0 :(得分:1)

问题是您的nsIProtocolHandler.newChannel()实现返回了一个常规的HTTP通道 - 它与HTTP URL而不是您的URL相关联。这很容易解决,但是将channel.originalURI设置为您的网址(您获得的newChannel()参数)。

文档:https://developer.mozilla.org/en/nsIChannel#Attributes