Я хотел бы запустить команду (exe где-нибудь на диске) с аргументами в простом надстройке WebExtensions и, возможно, получить ее стандартный вывод. Есть ли способ сделать это в WebExtensions, поскольку старые API устарели?
Как запустить программу командной строки в Firefox Webextensions?
Ответы (1)
В этом сообщении блога упоминается, как - https://blog.mozilla.org/addons/2016/06/09/webextensions-for-firefox-49/
Прочтите раздел runtime.connectNative
. Они говорят:
runtime.connectNative
Этот API позволяет вам взаимодействовать с другими процессами в операционной системе хоста. Это широко используемый API для менеджеров паролей и программного обеспечения безопасности, которому необходимо взаимодействовать с внешними процессами.
Для взаимодействия с собственным процессом существует двухэтапный процесс. Во-первых, вашему установщику необходимо установить файл манифеста JSON в соответствующем месте на целевом компьютере. Этот манифест JSON обеспечивает связь между Firefox и процессом. Во-вторых, пользователь устанавливает надстройку. Затем надстройка может вызывать connectNative, sendNativeMessage и другие API:
chrome.runtime.sendNativeMessage('your-application', { text: "Hello" }, function(response) { console.log("Received " + response); });
Firefox запустит процесс, если он еще не запущен, и направит команды процессу. Следите за ходом выполнения runtime.connectNative на Bugzilla.
child_process
- developer.mozilla.org/en-US/Add-ons/SDK/Low-Level_APIs/
- person Noitidart; 16.06.2016