当前位置: 首页 > 知识库问答 >
问题:

如何获取一个proto文件来引用另一个proto中定义的消息?

慕容超
2023-03-14

我正在使用由Visual Studio生成的gRPC服务项目。我有两个原型文件位于同一个“原型”目录中。我有一个原型,另一个原型文件有导入。它似乎找到了文件,但我无法引用来自另一个文件的任何消息。当我这样做时,我得到一个“blahblah”是未定义的错误。我已经拍摄了一些情况的屏幕截图。任何帮助都将不胜感激!

共有1个答案

长孙景焕
2023-03-14

它们位于不同的空间中;尝试东西。ThingRequest,或。ThingRequest(前导的.表示“绝对”,如以/开头的uri)

 类似资料:
  • 我对协议缓冲区很陌生。 我注意到grpc proto loader模块只需要加载一个proto定义文件,所以我在代码中加载了它,如下所示: 现在是我的索引。proto文件正在引用另一个proto文件,如下所示: 而我的定义如下 当我做以下操作时: 我收到一个错误的属性“LocationUpdater” 如果我将的内容移动到文件中,它可以工作,但我不希望这种行为,因为我将使用许多不同的原始文件来处理

  • 我有这样一个gRPC API定义(来自Akka docs示例),但要长得多(4000行,仅是服务部分)。 然而,RPC列表现在变得太长了,我想以某种方式将其“分解”为多个文件,以便文件更具可读性。像这样的 即使只是在不同的文件中分别定义RPC,然后编写类似的内容也会对我有所帮助: 是否有可能在gRPC协议定义中以某种方式“组合”服务?

  • 问题内容: 这是我的第一个文件: 我想要这个配置变量在另一个文件中,所以我在另一个文件中所做的是: 但这给我一个错误。 请提出我该怎么办? 问题答案: 您需要的是module.exports 出口产品 在当前模块的所有实例之间共享并可以通过require()访问的对象。export与module.exports对象相同。有关更多信息,请参见src / node.js。导出实际上不是全局的,而是每个

  • 如何为一个包含两个(或更多)python包的项目定义和组织gRPC原型文件? 假设我有以下monorepo结构: 我想使用gRPC将这两个服务连接在一起。我可以添加一个目录,其中包含适当的子目录,如下所示: 这是可行的:我可以生成。py文件正确,具有正确的导入语句。这种方法的问题是,我必须复制我的客户机中的所有内容。proto进入my\u服务器。协议。如果需要进行更改,则必须在两个文件中都进行更改

  • 假设有一天我将一条原始消息保存在一个文件中,作为第二天,我在消息中添加了一个新字段。 然后我读了我的_文件。从磁盘读取pb并尝试访问新字段。这会崩溃吗?这是UB吗?它是按标准处理的吗? 我试着读留档,我能得到的只有: 你可以在不破坏向后兼容性的情况下向消息格式中添加新字段;解析时,旧的二进制文件会忽略新字段。因此,如果您有一个使用协议缓冲区作为数据格式的通信协议,那么您可以扩展协议,而不必担心破坏

  • 问题内容: 我将Linux用作编程平台,将C语言用作编程语言。 我的问题是,我在主源文件(main.c)中定义了一个结构: 所以我希望这个结构可以在我的其他源文件(例如othersrc。)中使用。是否可以在另一个源文件中使用此结构而不将其放在标头中? 问题答案: 您可以使用指向它的指针,而不必包括它: othersrc.c: 但是否则,您需要以某种方式包括结构定义。一个好的方法是在main.h中定