使用套接字将数据从node.js发送到Java

我试图通过套接字将数据从node.js发送到Java。 我四处搜寻,但没有什么是真正有用的。 我习惯了socket.io,但在这种情况下,它似乎并不适合这个。 似乎所有的node.js套接字扩展都不适合发送消息,而是倾听消息并回答问题。

我的Java应用程序基本上应该从node.js接收一些工作,做一些工作并将一些结果发回到node.js。 不,工作不能在node.js上完成,它必须由Java(实际上是Scala,但是不pipe)来完成。

你们有谁知道我该怎么做这样的事情?

谢谢

您可以使用node.js中的构build套接字来做类似的事情(在java和node.js中非常简单,但您会明白):

Java:

 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.net.ServerSocket; import java.net.Socket; public class Test { public static void main(String[] args) { ServerSocket server; Socket client; InputStream input; try { server = new ServerSocket(1010); client = server.accept(); input = client.getInputStream(); String inputString = Test.inputStreamAsString(input); System.out.println(inputString); client.close(); server.close(); } catch (Exception e) { e.printStackTrace(); } } public static String inputStreamAsString(InputStream stream) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(stream)); StringBuilder sb = new StringBuilder(); String line = null; while ((line = br.readLine()) != null) { sb.append(line + "\n"); } br.close(); return sb.toString(); } } 

Node.js:

 var net = require('net'); var client = net.connect(1010, 'localhost'); client.write('Hello from node.js'); client.end(); 

以及有关套接字的node.js文档的链接: http : //nodejs.org/docs/latest/api/net.html