Javascript Node.js,protobuffer,buffer.lentgh。。如何通过tcp发送结构化缓冲区/消息?
我编写了一个node/ssjs程序,它可以:Javascript Node.js,protobuffer,buffer.lentgh。。如何通过tcp发送结构化缓冲区/消息?,javascript,node.js,buffer,byte,protocol-buffers,Javascript,Node.js,Buffer,Byte,Protocol Buffers,我编写了一个node/ssjs程序,它可以: Tcp连接到数据服务器(Apache MIMA),使用TLS模块。(好的) 通过protobuffer模块对消息进行编码/解码(序列化/反序列化)。。(好的) 将序列化消息发送到服务器并获取响应。(不好) 服务器的手动类型: Structure of message: [ Length | Header length | Header (| Body length |Body) ] Length – message length = fixed
- Tcp连接到数据服务器(Apache MIMA),使用TLS模块。(好的)
- 通过protobuffer模块对消息进行编码/解码(序列化/反序列化)。。(好的)
- 将序列化消息发送到服务器并获取响应。(不好)
Structure of message:
[ Length | Header length | Header (| Body length |Body) ]
Length – message length = fixed size (4 bytes). Note that this is only the size of
following message (not the prefix itself);
Header length – fixed size (4 bytes);
Header – contains message metadata (e.g. messageId);
Body length – fixed size (4 bytes, optional). If body is not required, body size is
not serialized. In such case, message is 4 (message length) + 4
(header length) + length(header) bytes long.
Body – the message payload (optional). If body is not present (e.g. response
notification without data) it is not serialized.
Length [bytes] Content
4 Whole message length
4 Header message length (H_LEN)
H_LEN Protocol Buffers encoded MessageHeaderProto
4 Body message length (B_LEN), optional
B_LEN Protocol Buffers encoded Message
我的问题是:
- 如何获取protobuffer的4字节长度李>
- 如何连接 发送前的缓冲区李>
- 如何发送李>
- 有可能用它吗 JavaScript?观察:服务器使用小端字节顺序, 客户端也是
谢谢大家……我也在努力寻找类似的东西。