在我们的node.js应用程序中,我们需要反序列化一个Buffer,我们知道它包含多个对象。使用gateway1
的方式是这样的:
protobuf-net
我现在正尝试对var stream = new MemoryStream(byteData);
List<Schema.Object> objects = ProtoBuf.Serializer.Deserialize<List<Schema.Object>>(stream);
做同样的事情。我还没有找到创建模型对象数组的示例,仅创建了一个模型对象,如下所示:
protobuf.js
如何使用protobuf.js创建对象数组,而不是单个对象?
以下是数据的序列化方式:
const Object = root.lookupType('model.Object');
const message = Object.decode(byteData); //this creates one object but the buffer contains multiple objects
答案 0 :(得分:0)
找到了解决方案。您可以用另一个包含重复条目的消息来包装对象。然后,当解码时,它将是一个对象数组。
在.proto文件中:
message ObjectCollection {
repeated Object objects = 1;
}