我想在一个简单的 WebExtensions 插件中运行一个带有参数的命令(磁盘上某处的 exe),并可能得到它的标准输出。有没有办法在 WebExtensions 中这样做,因为旧的 API 已被弃用?
问问题
4162 次
1 回答
4
这篇博客文章提到了如何 - 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 将启动该进程,并将命令通过管道传送到该进程。关注 Bugzilla 上 runtime.connectNative 的进展。
于 2016-06-14T12:56:21.843 回答