WebExtensions:将数据发送到批处理文件?

时间:2017-04-13 16:25:17

标签: javascript batch-file browser-plugin

如果浏览器插件正在向.bat文件发送消息,那么发送该消息的正确方法是什么?我看过以下例子:

var sending = browser.runtime.sendNativeMessage("ping_pong", "ping");

var port = browser.runtime.connectNative("ping_pong");  
port.postMessage("ping");

在该示例中,ping_pong是Windows注册表中本机应用程序的名称。

编辑:

我正在尝试使用本文所述的Native Messaging:

https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Native_messaging

我创建了一个Firefox插件,它使用上面显示的代码将字符串发送到批处理文件。我还为该应用程序创建了注册条目和JSON文件,如该链接中所述。 JSON文件包含批处理文件的链接,以便插件知道要调用的应用程序。

批处理文件可以使用%1接受参数。但是,%1的值是JSON文件的名称,而不是使用JavaScript发送给它的消息。

编辑2:

上面链接中给出的示例是一个处理标准输入的Python文件。因此,批处理文件调用Python文件来处理消息传递。我使用的是Java文件。这解决了问题,并且没有问题。

0 个答案:

没有答案