我正在为应用程序构建一个附加组件。客户付费查看一些网页并从中下载一些文件。他们想通过插件自动化这个下载过程。因此,无需选择“将页面另存为”并等待下载完成,他们可以单击加载项并忘记该过程。问题是,网页正在向浏览器提供一些 cookie。所以最好的方法是 File-> "Save Page As" 。我想通过插件来做到这一点。有没有什么firefox-javascript方法呢?我使用了 nsiDownloader。但它只保存html,而不是图片等。有人可以指导我解决这个问题吗?
编辑: 嗨,这是成功的代码,感谢 sai prasad
var dir =Components.classes["@mozilla.org/file/local;1"]
.createInstance(Components.interfaces.nsILocalFile);
dir.initWithPath("C:\\filename");
var file = Components.classes["@mozilla.org/file/local;1"]
.createInstance(Components.interfaces.nsILocalFile);
file.initWithPath("C:\\filename.html");
var wbp = Components.classes['@mozilla.org/embedding/browser/nsWebBrowserPersist;1']
.createInstance(Components.interfaces.nsIWebBrowserPersist);
alert("going to save");
wbp.saveDocument(content.document, file,dir, null, null, null);
alert("saved");
编辑: 但是,仍然有些网页没有完全保存为“将页面另存为”。这些保存的页面不会像原始页面那样呈现,它们看起来像一些 html 示例。