Как создать фрейм сообщений для отправки через TCP с помощью node.js?

Мне нужно отправить строку JSON нескольким TCP-клиентам с TCP-сервера node.js.

Чтобы читать сообщения из сокета / потока на стороне клиента, мне нужно создать своего рода фрейминг сообщения. Один из способов сделать это - поставить перед сообщением длину сообщения в виде массива, а затем преобразовать это значение в размер буфера для сообщения на стороне клиента.

Как мне сделать что-то подобное в node.js / javascript на сервере, а затем прочитать его на стороне клиента с помощью клиента .NET?

С учетом этого кода на стороне клиента, как мне правильно оформить сообщение на стороне сервера с помощью javascript / node?

        TcpClient client = new TcpClient(server, port);
        var netStream = client.GetStream();

        // read the length of the message from the first 4 bytes
        byte[] b = new byte[4];
        netStream.Read(b, 0, b.Length);
        int messageLength = BitConverter.ToInt32(b, 0);

        // knowing the length, read the rest of the message
        byte[] buffer = new byte[messageLength];
        netStream.Read(buffer, b.Length, buffer.Length);
        var message = System.Text.Encoding.UTF8.GetString(buffer);
5
задан alex.tashev 11 July 2011 в 14:15
поделиться