问题标签 [proto3]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
628 浏览

java - 如何从 Java 中读取 proto3 自定义选项

鉴于以下服务:

我想从 Java 中读取选项。我的理解是以下代码应该可以工作:

但是,这不会编译,抱怨无法解决方法的键入问题。

我正在尝试遵循:https ://developers.google.com/protocol-buffers/docs/proto.html#customoptions

所以问题是,我如何从 Java 中读取选项?

0 投票
1 回答
583 浏览

c# - 如何在 gRPC 通信中的 proto 3 有效负载中添加接口和类

我需要编写一个框架,并且有两个应用程序正在使用 gRPC 进行通信。它们共享一些共同的原型有效载荷。现在,挑战是,我想在那个 proto3 proto 合约中编写一些接口和实现。它是基于 c# 的应用程序,所以两者都将从 .proto 文件生成基于 c# 的原型类型。

有没有办法达到同样的效果。

0 投票
1 回答
1094 浏览

protocol-buffers - Proto 3:一种在字段级别添加元数据的方法

我正在使用 protobuf-gradle-plugin 从 proto 文件生成 java 类。

我的原型文件看起来像

该插件正在为我生成类,但现在我想在字段级别添加一些元数据信息。像

这可能吗?

0 投票
2 回答
1249 浏览

go - json封送数据的proto3消息类型

我正在实现一个 gRPC API,并希望添加 JSON 正文数据作为响应。

所以我试过:

原型3

接口代码:

添加此获取 gRPC API 响应后:

问题是正文 JSON 键值是动态的。有什么方法可以让我们得到类似的回应

0 投票
1 回答
2546 浏览

protocol-buffers - proto3 - oneof vs 带有标识符的字段

我正在为一个对象编写一个 proto3 类,该对象目前有大约 2 个变体,并且将增长到 6 或 7 个。其中只有一个会在消息中使用。这些变体不共享公共字段。它们将被编码为父消息中的子消息。这些消息将被写入一次并读取数万次。

我想知道什么是最高效的方式,内存和解析明智的时间,以实现这一点,以便随着更多变化的添加,性能不会丢失。

考虑以下变化。

第一个选项:定义一​​个oneof引用特定子类型的字段。

第二个选项:定义一​​个整数作为可用变体的标识符。在运行时,此整数可用于确定已设置哪个变体(另一种方法是对变体进行空值检查并使用第一个非空值)。

我对电线尺寸和性能特别感兴趣。

在第二个选项中,考虑到只设置一个变体(在应用程序层中强制执行),电线尺寸会比第一个更大吗?是否也为空字段保留内存?

0 投票
2 回答
1362 浏览

grpc - 如何确定proto3的oneof字段的值类型?

以上是我的 gRPC 设置的 proto3 代码,其中我有一个 python 服务器和一个 PHP 客户端。
在 PHP 客户端上,我将模型对象设置为 ARIMA。
如何在我的 python 服务器上检查 request.model 的类型是 ARIMA 类型?
另外,我希望 PHP 客户端能够将模型设置为 ARIMA 或 SARIMA,我接近这个的方式是否正确?

0 投票
0 回答
62 浏览

grpc - 将类传递给 gRPC (proto3) 中的 RPC

.proto我最近安装了 gRPC (C++),我对这些文件有疑问。假设我希望 Request 的成员之一是自定义用户定义的 C++ 类,可能像这样:

userClass是一个自定义定义的 C++ 类。如果我想做这样的事情,我如何让 gRPC 知道我有一个我希望它使用的自定义类?我应该在哪里定义这样的类?我认为它使用了 proto3,但在 proto3 文档中找不到太多内容,而且我之前完全没有使用 proto3 的经验。

提前致谢。

0 投票
1 回答
1475 浏览

php - gRPC Protobuf 的 Timestamp.FromDateTime() 在 PHP 上返回 null

我无法理解我在这里做错了什么。

Carbon 是 DateTime 的简单 PHP API 扩展,因此它应该可以工作,但我得到 $pt 的空值

0 投票
1 回答
845 浏览

protocol-buffers - 从一个对象 Python 访问字段值

让我们看看这个 proto3 代码:

我想从CAT或访问字段DOG

我可以将oneof值选择为:

但是我怎样才能动态访问每个字段呢?我必须getWoof()为每个领域打电话吗?

我可以访问每个字段名称,例如:

0 投票
0 回答
26 浏览

c# - 在 protobuf 中传递服务

假设,我有一个Base类和一个Foo类派生自Base

我正在编写 protobuf 协议来使用他们的方法。

它们共享一些功能,有没有办法通过传递服务来避免重写代码?

例如:

我正在使用 C#,ProtoBuf 3.0。