我试图从网页中保存这个图标,用户通过firefox-addon在本地访问。我将该图标的URL存储为nsIURI,并尝试使用saveURI方法,但它在persist.saveURI行上失败。下面是我的当前代码。
var path = "/home/testing.ico";
var uri = Cc['@mozilla.org/network/standardurl;1'].createInstance(Ci.nsIURI);
var file = Cc['@mozilla.org/file/local;1'].createInstance(Ci.nsILocalFile);
var persist = Cc["@mozilla.org/embedding/browser/nsWebBrowserPersist;1"]
.createInstance(Ci.nsIWebBrowserPersist);
uri.spec = tab.activeTab.url + "favicon.ico";
file.initWithPath(path);
persist.saveURI(uri, null, null, null, "", file, null);发布于 2013-09-25 17:46:09
根据文档,nsIWebBrowserPersist.saveURI需要7个参数,而您只传递6个参数(缺少最后一个参数)。
saveURI() 将指定的URI保存到文件中。 void saveURI( in nsIURI aURI,in nsISupports aCacheKey,in nsIURI aReferrer,in nsIInputStream aPostData,in string aExtraHeaders,in nsISupports aFile,in nsILoadContext aPrivacyContext );
此错误也与此问题相关。
https://stackoverflow.com/questions/19011545
复制相似问题