nodejsのソケットサーバー/クライアントに関するソースコードは以下のとおりです。私は上記のコードを実行するとき、サーバはクライアントに戻る(クライアントからである)データを送信しますnodejsのパイプソケットサーバーから入力/出力を分離する方法は?
const net = require('net');
net.createServer((socket)=>{
socket.pipe(socket);
socket.on('data', (data)=>{
console.log('receive data ', data.toString());
socket.write('this is server')
});
}).listen(3000);
console.log("Chat server running at port 5000\n");
let client = new net.Socket();
client.setEncoding('utf8');
client.connect(3000, '127.0.0.1', function() {
console.log('Connected');
client.write('Hello, server! Love, Client.');
});
client.on('data', function(data) {
console.log('Received: ' + data);
});
。私はこれがsocket.pipe(socket);
によってケースされていることを知っています。私は、そのコードを維持したいと以下のようにクライアント側で入力/出力データを分離する方法を探しています:
client.on('data', function(data) {
if(the data is sent from client){
...
} else {
//this is the data generated from server
}
});
誰でもnodejsクライアント側でそれを行う方法を知っていますか?
私が持っている問題はnet.socketです。つまり、メッセージとして 'data'を使用しています。私はそのメッセージの名前を変更することはできません。 –