2015-05-05 3 views
0

У меня есть этот код, я хочу получить все данные, которые отправляются клиентом. но проблема в том, что он печатает символ один за другим.Как получить все данные, которые отправляются

как этот

receive data ? 
receive data ? 
receive data _ 
receive data Z 
receive data 
receive data O 
receive data ? 
receive data } 
receive data . 
receive data ? 
receive data (
receive data ? 
receive data ? 
receive data G 
receive data ? 
receive data " 
receive data ? 
receive data ? 
receive data ? 
receive data ? 
receive data C 
receive data ? 
receive data C 
receive data ? 
receive data ? 
receive data a 

var net = require('net'); 

var server = net.createServer(function(socket){ 
     socket.on('data',function(data){ 
      console.log("receive data",data.toString()); 
     }); 
}); 

server.listen(3333,'127.0.0.1', function() { 
    console.log("server is up!"); 
}); 

ответ

2

Не тестировался, но попробуйте это:

var net = require('net'); 
    var response=""; 
    var server = net.createServer(function(socket){ 
      socket.on('data',function(data){ 
       response+=data.toString(); 
      }); 
      socket.on('end',function(data){ 
       console.log("received data", response); 
      }); 
    }); 

server.listen(3333,'127.0.0.1', function() { 
    console.log("server is up!"); 
}); 
+0

мы можем установить размер, чтобы получить? – jemz

+0

У меня проблема, клиенты должны сначала отключиться от сокета, чтобы получить данные, но они одновременно отправляют данные в сокет. Если у меня есть 10 клиентов вместе, отправляющих данные в сокет, но они еще не отключены. Я пропустил некоторые из данных – jemz

Смежные вопросы