下载并打开Firefox

时间:2014-12-26 20:41:06

标签: firefox-addon firefox-addon-sdk firefox-addon-restartless firefox-addon-bootstrap firefox-addon-overlay

我是Firefox插件系统的新用户。我想创建一个插件,下载多个文件,然后打开它们进行练习。

我的问题是,是否有办法从插件中的Internet下载文件。我知道os.file的存在(虽然我不容易理解如何从提供的示例中使用它)。接下来我想知道是否有办法使用默认程序执行该文件。

1 个答案:

答案 0 :(得分:1)

从Firefox 26开始,在Add-on SDK,restartless / bootstrap或基于overlay的扩展中,从附加组件中下载文件的最合适方式是使用Downloads.jsm JavaScript代码模块。

从MDN Downloads.jsm页面下载到本地文件示例:

Components.utils.import("resource://gre/modules/Downloads.jsm");
Components.utils.import("resource://gre/modules/osfile.jsm")
Components.utils.import("resource://gre/modules/Task.jsm");

Task.spawn(function () {
  yield Downloads.fetch("http://www.mozilla.org/",
                        OS.Path.join(OS.Constants.Path.tmpDir,
                                     "example-download.html"));
  console.log("example-download.html has been downloaded.");
}).then(null, Components.utils.reportError);

如果您要完全按照用户启动的方式启动下载,那么您应该会看到我对 How to launch a normal download from an addon 的回答。