【发布时间】:2019-10-17 21:57:55
【问题描述】:
我想通过线路发送不同的 protobuf 消息流,并能够在它们到达时区分它们。
假设我有一个这样的 *.proto:
message Book {
//...
}
message BlueRay{
//...
}
然后和发送方,我序列化让我们说这个序列(C#中的伪代码):
Book1.WriteDelimitedTo(myStream);
BlueRay1.WriteDelimitedTo(myStream);
Book2.WriteDelimitedTo(myStream);
如何才能知道接收方收到的消息的顺序/类型? (当然,合约在发送方和接收方都可用) 根据我的发件人的状态,我无法推测/说出将要发送的内容以及发送的顺序......
我知道没有像the documentation 中所述的内置方法,但例如对于消息的大小,有一个帮助器(C# API 帮助器 WriteDelimited 方法来嵌入大小)。
如何获取/映射收到消息的类型?
我的服务器将用给定的语言(实际上是 C#)编写,但我的客户端应该在任何 protobuf 支持的目标中“可实现”,所以我不想设置一些会序列化 C#/CLR 特定内容的东西...
我可能以一种奇怪的方式使用 protobuf?我正在尝试建立一种协议。
【问题讨论】:
标签: protocol-buffers