【问题标题】:Download and open Firefox下载并打开火狐
【发布时间】:2014-12-26 20:41:05
【问题描述】:

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

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

【问题讨论】:

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


【解决方案1】:

从 Firefox 26 开始,在 Add-on SDK、restartless/bootstrap 或基于覆盖的扩展中,从插件中下载文件的最合适方法是使用 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 的回答。

【讨论】:

    猜你喜欢
    • 2012-09-28
    • 2012-06-16
    • 1970-01-01
    • 1970-01-01
    • 2017-05-03
    • 1970-01-01
    • 2020-01-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多