setNoDelay не влияет на полученные события данных при использовании модуля node net - PullRequest
0 голосов
/ 18 февраля 2020

Я подключаюсь к серверу, который передает небольшие XML документы. Я настроил свое соединение следующим образом.

var client = new net.Socket();

client.connect(8889, 'censored.server.com', function() {
    client.setNoDelay(true);
    client.setEncoding('utf8');
    console.log('Connected');
});

client.on('close', function() {
    console.log('Connection closed');
    client.destroy();
});

client.on('error', (error) => {
    console.log(error.message);
})

client.on('data', xmlPacket => {
    console.log(data.length, xmlPacket);

});

Обратите внимание на вызов setNoDelay внутри функции connect. Теперь, когда я запускаю скрипт. Я получаю пакеты в форме, в которой они объединяются, и составляют 1452 байтов каждый.

1452 <Something></Something> ...
1452 <Something></Something> ...
1452 <Something></Something> ...

Я хочу, чтобы событие data срабатывало для каждого xml, отправленного с сервера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...