1

客户端(Java)

Socket tcpClient = new Socket("localhost", 6000); 
String msg ="test";
DataOutputStream os = new DataOutputStream(tcpClient.getOutputStream());
PrintWriter pw = new PrintWriter(os);
pw.println(msg);
pw.flush();

服务器(node.js JavaScript)

var net = require('net');
var server = net.createServer(function (c)
{ //'connection' listener
    log('Java client connected to this nodeServer');
    c.on('data', function (data)
    {
        console.log(data);   
    });
    c.on('end', function ()
    {
        console.log('nodeServer disconnected');
    });
});
server.listen(6000, function ()
{ //'listening' listener
    console.log('nodeServer listening port:6000');
});

结果

nodeServer listening port:6000

Java client connected to this nodeServer

<Buffer 74 65 73 74 0a>

连接成功,但显然,我需要 Result 中的 'test' 字符串。

对于数据,到目前为止,我使用字符串来简化我的问题,但是,能够传输任何对象是理想的。

也许,我需要使用 JSON 框架(用于非二进制对象)通过 Java/TCP 发送,但不确定。


PS。这可以通过简单地修改为

 var data1 = data.toString('utf-8');
 console.log(data1); 

只是为了分享。

4

1 回答 1

0

这可以通过简单地修改为

 var data1 = data.toString('utf-8');
 console.log(data1); 

只是为了分享。

于 2013-03-14T04:27:49.143 回答