Comments
Спасибо, статья годная, Хабр торт. В начале статьи казалось что она совсем для новичков, но в итоге узнал для себя много нового.

У вас в таком коде


socket.on('data', (data: Buffer) => {
  if (data[0] === this.OPCODE.SHORT_TEXT_MESSAGE) { // Обрабатываем в данном примере только короткие сообщения
    const meta = this.decryptMessage(data);
    const message = this.unmasked(meta.mask, meta.data);
    this.connections.forEach(socket => {
      this.sendShortMessage(message, socket);
    });
  }
});

не учитывается фрагментация когда буфер полученный в обработчике 'data'-события может быть длиной вплоть до одного байта

Only those users with full accounts are able to leave comments. Log in, please.