Скачайте и откройте Firefox
Я новый пользователь системы плагинов Firefox. Я хотел создать плагин, который будет загружать несколько файлов в очередь, а затем открывать их для практики.
У меня вопрос, есть ли способ загрузить файл из Интернета в плагине. Я знаю о существовании os.file (хотя мне непросто понять, как использовать его из приведенных примеров). Далее я хотел бы знать, есть ли способ выполнить файл, используя для него программу по умолчанию.
1 ответ
Начиная с Firefox 26, в дополнительном SDK, расширениях restartless/bootstrap или overlay на основе наиболее подходящим способом загрузки файла из дополнения является использование модуля кода JavaScript Downloads.jsm.
Примерзагрузки в локальный файл со страницы 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);
Если вы хотите начать загрузку в точности так, как если бы пользователь ее инициировал, вы должны увидеть мой ответ на Как запустить нормальную загрузку из аддона.