问题标签 [protobuf.js]
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.
angular-universal - npm 运行服务:ssr。ENOENT:没有这样的文件或目录,打开 'google/protobuf/api.proto'
我正在尝试迁移现有的 Angular 应用程序以通过 Angular Universal 使用服务器端渲染。npm build:ssr 可以正常工作,但是在尝试服务:ssr 时,在尝试查找 'google/protobuf/api.proto' 和其他 protos 时会出错。
原型位于 中node_modules/protobufjs/google...
,但在尝试为该站点提供服务时显然无法找到。
一些谷歌搜索说我需要放一个,externalDependencies
但没有奏效。
版本信息:
node.js - Node.js protobuf 包括
我们正在尝试在 Node.js 中实现一个 grpc 服务。
我们有一个common.proto
描述常见消息的文件,我们可以在不同的服务中重用这些消息。到目前为止,我们只在 Go 中实现了服务,并在 Go 或 PHP 中使用它们。这一切都很好。
现在我们想在 Node 中实现一项服务,我们已经生成了 pb.js 文件,它们都来自common.proto
,并让我们调用它service.proto
。
问题是,service_pb.js
它会生成以下代码:require("../common_pb.js")
这当然是无效的,因为路径common_pb.js
是node_modules/@company/common-node/common_pb.js
,而现在它在node_modules/@company/common-node/common_pb.js
.
我仍然无法弄清楚我们如何才能使 Node 正确地工作,所以如果有人有一个很棒的解决方案。
node.js - 在 nodejs 上使用 protobufjs 使用来自 .net 的 protobuf 消息时出现无效的线路类型和索引超出范围错误
我正在尝试在节点 js 上使用来自 RMQ 的 protobuf 消息。protobuf 消息是使用 C#.Net 上的 protobuf-net 创建的
因此,例如 c# 对象如下所示:
然后它被添加到 RMQ 中,我们在另一端使用具有相同对象的 .net 侦听器对其进行解码。
但是现在我们想从 nodejs 读取消息。为此,我在 nodejs 端使用 amqplib 和 protobuf-js。
我试图使用带有装饰器的对象来解码消息,如下所示:
像这样解码:
其中 ch 是 amqplib RMQ 通道。
但我总是遇到以下错误之一:
偏移 2 处的无效导线类型 7
偏移 2 处的无效导线类型 4
偏移 2 处的无效导线类型 6
超出范围的索引:237 + 10 > 237
ETC
我究竟做错了什么?
编辑:
看起来我没有考虑 MessageBase(PositionOpenNotification 继承的抽象)也是一个 ProtoContract 并且数据是用长度前缀序列化的事实。
所以最后这是有效的:
添加一个带有 PositionOpenNotification 对象的 MessageBase 对象:
然后在反序列化它时:
javascript - 在 protobuf.js 中自动包装和解包 wrappers.proto 类型
我一直在使用 protobuf.js(命令行工具)pbjs 和 pbts 为我定义的 .proto 文件生成我的 js 和 typescript 类。我从我的后端 API 收到一个 json 响应,我希望将其反序列化为 protobuf 生成的类。推荐的方法是使用接受 json 对象的 fromObject 方法。假设我有
我希望能够通过:
并让它们都编码和解码为同一事物。但是,如果我想设置代码字符串,我必须这样做:
我希望 fromObject 可以处理这个问题,但它没有 - 有什么方法可以挂钩一些定制来做到这一点。或者,如何使用 typescript 使用 protobufjs 来实现这一点?
typescript - Typescript 枚举作为接口
我正在使用一个用于 TS 生成的库(ts-protoc-gen),它为枚举生成以下内容:
- 我应该如何消费它?
- 它如何在不初始化的情况下导出 const?
graphql - 可以使用 protobuf 发布到 Apollo 服务器吗?
我正在开发一个当前使用 protobuf 从客户端与 api 进行通信的项目。我想做一个显示通过graphql进行通信的概念证明,并且想知道是否可以将protobuf发送到apollo服务器而不是json。
我看到一些protobuf相关的包, https ://www.npmjs.com/package/apollo-engine-reporting-protobuf https://www.npmjs.com/package/@apollo/protobufjs
并且想知道是否有任何计划或是否有可能。在这里问是因为我在社区网站上没有收到任何回复。
protocol-buffers - 编码和解码协议缓冲区任何类型的消息
我有一个看起来像这样的原始文件。
然后我尝试对消息进行编码和解码,我丢失了google.protobuf.Any
类型的信息。
有谁知道这是为什么?
node.js - 如何将 protobuf.js 从 nodejs 连接到客户端?
我遇到了一个问题,我无法理解如何将 node.js 后端 API 与用 Angular 编写的前端应用程序连接起来。任何人都可以帮我吗?
我不明白我应该如何使用 protobuf.js 编写数据并在客户端使用它。我开始使用这个库- Protobuf.js - 但我仍然不知道如何用它做简单的 API。
谢谢你的帮助!
javascript - 在消息中表示可变 JSON 对象数据
使用 protobufjs,我正在尝试定义一条消息,该消息将具有一个包含标准 JSON 对象的字段。
在我的打字稿代码中,我使用
在运行时,我收到消息失败
错误:类型中没有此类类型或枚举“google.protobuf.Struct”
我究竟做错了什么?是否有可能包含可变 JSON 对象数据的消息?
javascript - 有没有办法按标签解码/编码,但在 protobuf.js 中没有任何 .proto 文件或 json 文件?
有没有办法按标签解码/编码,但在 protobuf.js 中没有任何 .proto 文件或 json 文件?
还是其他图书馆?
喜欢: