问题标签 [proto]

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 回答
2247 浏览

protocol-buffers - 导入另一个 proto 文件时出错

当我尝试编译 proto 文件以转换为 .java 时出现错误。
你能指出我错过了什么吗?

有效载荷.proto

BackendCommunicationService.proto

0 投票
1 回答
1525 浏览

java - 子消息的 Protobuf 延迟解码

我在我的项目中使用 proto 3 (java)。我有一些嵌入了较小消息的巨大 protobuf。有没有一种方法可以对我想查看的少数嵌套子消息进行部分解码。我目前遇到的问题是我需要将这个基于原型的巨大记录数据与另一条记录连接起来,但我的连接是基于非常小的子消息,所以我不想解码整个巨大的 protobuf 并且只能解码要加入的嵌套消息(字符串 id),然后只为加入的数据解码整个 protobuf。

我尝试使用[lazy=true]标记方法,但在生成的代码中看不到任何差异,我还尝试在有和没有惰性键工作的情况下对反序列化时间进行基准测试,但它似乎根本没有影响。此功能默认情况下是否适用于所有字段?或者这甚至可能吗?我确实看到 protobuf-github 中的 LazyFields.java 类和测试用例很少,所以我假设这个功能已经实现。

0 投票
1 回答
51 浏览

javascript - 原型继承javascript

来自 Java 背景,Javascript 是我试图掌握的一个新世界。
我有点为原型继承的工作原理而苦苦挣扎。
我从 __proto__ VS得到了什么。JavaScript和其他资源中的原型很有帮助,但我真的想确保我掌握了这个主题。以下陈述是否正确?

__proto__,对象的属性,是表示对象原型的对象。这个对象又可以有一个__proto__属性,直到 Object 对象到达链的末端。

prototype是函数对象的属性,也是对象本身。当使用new关键字从函数实例化对象时,__proto__该新实例的 将成为prototype构造函数的属性。例如:

此外,当对象相互测试是否相等时,它们是以下代码中的相同对象:

由于通过引用测试对象是否相等,这是否意味着实际上存在一个Object.prototype对象实例并且所有对象都__proto__引用该实例?

提前致谢。

0 投票
0 回答
1090 浏览

java - 未找到导入“someObj.proto”或有错误

我需要导入在我们中央 maven 的 jar 中定义的 .proto 文件。

这是我的 build.grade:

这是我的 other.proto 文件:

每当我尝试编译时,它总是抱怨

Import "someObj.proto" was not found or had errors.

我已经从这个 maven 下载了 jar 文件,并且清楚地看到这个 someObj.proto 在那里。

请问有什么想法吗?

谢谢!

0 投票
2 回答
1316 浏览

protocol-buffers - gRPC 接口设计建议 - 处理创建和更新的正确样式

我们正在构建一个新平台,其中 gRPC 提供消息传递层,最终将公开我们的 API 预期支持的全套功能。

我们正在尝试确定命名接口的最佳模式,以避免重复的消息类型,不得不繁重地处理边缘情况和

我们正在做的一个简单示例涉及创建、更新和检索用户。以下是我们今天的服务的外观示例:

GetUser 非常简单——它接收一个简单的 ID 的 UserRequest 消息,并返回一个用户(来自我们的核心包——应用程序中的许多服务将用户消息作为输入,所以我们将它放在一个共享位置)。

我的问题专门针对 Create/Update Users 调用,因为尚不清楚最佳解决方案是什么。这两个函数略有不同,主要是在一种情况下,我们已经有一个用户,因此有一个 ID,而在另一种情况下,我们正在创建一个新用户。在 Create 案例中,我们可能只有 User 上可能存在的可用字段的子集 - 但理想情况下,我们只需在一个地方维护此列表,因为它可能会变得相当大。我们可以:

  • 对于每个呼叫,定义自定义请求/响应消息,并在其中嵌入任何常见消息。这看起来像下面的代码。我担心的是,我们最终每次调用都会有一个消息类型,从可维护性的角度来看,这最终可能会非常繁重。

代码

  • 我们可以期待/发送常见的消息类型,并依靠评论或其他反馈机制来鼓励消费者传递正确的值(我最初的实现演示了这一点)。我对这种方法的担忧是,我们最终不得不添加大量验证以确保他们提供的字段是“正确的”。

我正在努力在网上找到许多其他人如何处理此类问题的示例。我提供的示例相当简单,但您可以想象在整个项目中我们会遇到类似的问题。我希望看到有人在实践中完成的相当复杂的 gRPC 接口的示例,或者只是来自广泛使用它的人的反馈,以了解他们认为哪些界面设计模式最有效。

谢谢!

0 投票
2 回答
53 浏览

javascript - Any cases when an object does not traverse its prototype chain to get value?

As we know, when we try to access an object's property it first check's if the object has its own property. If it does not find, it traverses the prototype and checks, and so on up the prototype chain.

Coming to the question, please check the below code snippet(http://jsbin.com/mabajidoti/edit?js,console)

From the above snippet, the first console.log statement, myObj.myValue is returning undefined even though myValue is available in its prototype(2nd console.log statement)? Shouldn't it have traversed the prototype chain to fetch the myValue's value?

0 投票
1 回答
737 浏览

java - JAVA GRPC libprotoc 生成的文件和基于 Grpc Ssl 上下文的订阅问题

我使用 proto 编译器版本 3.4.0 编译了 GNMI proto 文件,我的 proto 文件如下所示: https://github.com/openconfig/gnmi/blob/master/proto/gnmi/gnmi.proto

我使用生成 GRPC 存根

并确实使用了这里推荐的 pom 文件,如下所示:

现在我正在尝试订阅该服务,如下所示:

想知道我在这里缺少什么。我正在使用客户端和证书连接到服务,但无法解析依赖关系,如上述导入语句所示,即 io.grpc.netty.GrpcSslContexts、io.grpc.netty.NettyChannelBuilder、io.netty.handler.ssl.SslContext

我可以使用任何版本的 libprotoc 3.4.0、3.1.0 或 3.0.0。并且对于 GRPC 存根的 java 插件版本非常灵活,即 protoc-gen-grpc-java-1.8.0-linux-x86_64.exe

关于我需要在我的 POM 文件中定义的 Jar 文件的推荐组合、在这种情况下可与 JDK 7 一起使用的正确版本的 libprotoc 编译器和插件有什么想法吗?

0 投票
0 回答
526 浏览

protocol-buffers - 如何为 protobuf 生成的端点强制执行 http no-cache 标头?

生成以下protobuf时如何强制http头无缓存?

假设我们在 proto 文件中定义了以下 rpc 方法,包括 http 选项。http get 选项使我们还可以生成一个 http 网关 API 端点

使用 ProtoC 生成 api 时

我们面临的问题是某些浏览器可能会缓存这个特定的 api 调用,因为浏览器中启用了缓存。即使请求的有效负载包含用户,如果响应没有 http no-cache 标头,浏览器也可以缓存 GET 调用。

问题是我们如何通过 proto 文件中的定义在生成的 api 的响应中强制执行 http 无缓存?

0 投票
1 回答
647 浏览

javascript - How to extend the Google maps class?

I am trying to create a custom Google maps object which uses prototype inheritance to proxy any functions it does not have through to the Google Maps object.

So far this is an extremely simple example of what I am trying to achieve:

This works fine but I am overriding the prototype of my MapProxy and therefore I have to define my functions as this.myFunction inside my constructor. Instead of it being a reference now every Google maps instance creates it's own custom functions.

Now I probably won't end up with 15 Google Map instances but is there a better strategy to inherit the prototyped functions of the Google Maps object without overriding my ProxyMap prototype functions?

0 投票
1 回答
1388 浏览

c++ - OpenCV cv::dnn::Net::getBlob 返回 dnn::Blob::matRefConst 有 rows == -1 和 cols == -1

截图:getBlob返回错误结果:

图片在这里

这是添加代码:

and prototxt file : # name: " nin_imagenet " # 与 caffe 的 prototxt 相比,下五行发生了变化
通道数 input_dim: 224 # 宽度 input_dim: 224 # 高度