2
數據立即清空我有以下代碼:節點JS TCP服務器不緩存
// Setting up the TCP:
var server = net.createServer(function(socket) {
console.log('Android Client connected');
socket.setNoDelay(true);
socket.on('data', function(data) {
console.log(data.toString());
var json = JSON.parse(data.toString());
if(json.id == 1) {
socket.world = findAnEmptyWorld();
socket.player = socket.world.addPlayer(json.data);
socket.player.socket = socket;
tcpClients.push(socket);
socket.write(JSON.stringify({id: 3, data: socket.player.toJSON()}));
socket.pipe(socket);
}
});
});
server.listen(4444, function() {
console.log("TCP server listening on port 4444");
});
當我寫的消息時,它被保存到緩衝區中,但刷新後,才關閉服務器...什麼我應該在寫入後立即刷新緩衝區嗎? (你可以看到我嘗試「setNoDelay」爲true)
我玩過一個類似的代碼,並觀察到使用socket.write(somedata)和socket.pipe(套接字)也會觸發'data'事件,所以我們得到一些數據給我們。只是好奇,你觀察到同樣的事情嗎? –