Node.js 和 Java 之间的 IPC 通信
Posted
技术标签:
【中文标题】Node.js 和 Java 之间的 IPC 通信【英文标题】:IPC Communication between Node.js and Java 【发布时间】:2019-09-10 14:37:12 【问题描述】:我希望通过 IPC 在 Node.js 和 Java 子进程之间进行通信。我正在寻找不需要打开端口的建议。
const spawn = require('child_process')
// Java App is within args
const args = []
const javaProcess = spawn('java', args, cwd: __dirname )
javaProcess.on('message', (m) =>
console.log('PARENT got message:', m)
)
// Sends 'hello': 'world' to the Java process
javaProcess.send( hello: 'world' )
我知道 Node 层可以向子进程发送消息,但我只是不知道如何在 Java 层中侦听消息并发送回消息。
非常感谢任何帮助,谢谢!
【问题讨论】:
尝试监听 System.in 并响应 System.out *nix 上的 unix 域套接字或 Windows 上的命名管道 我最终使用命名管道解决了这个问题,感谢陈恒奇! 【参考方案1】:我通过使用命名管道解决了这个问题...
在节点上我使用了 Net API https://nodejs.org/api/net.html#net_ipc_support
在 Java 上,我使用了 RandomAccessFile https://docs.oracle.com/javase/7/docs/api/java/io/RandomAccessFile.html
【讨论】:
以上是关于Node.js 和 Java 之间的 IPC 通信的主要内容,如果未能解决你的问题,请参考以下文章