问题标签 [protoreflect]

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 投票
0 回答
519 浏览

go - 我们如何使用 gogo JSONPB marshaler 编组动态原型(来自 jhump/protoreflect)

我有一个使用jhump/protoreflect创建的动态原型。当我尝试使用gogo jsonpb编组 proto 对象时,我最终遇到了下面提到的错误。

代码:

到目前为止,它可以工作并打印After Marshal Resp1 is : {"object":{"@type":"type.googleapis.com/foo.Bar","id":123,"name":"kishore"}},因为所有对象都定义为 Go protobuf。但是,当我使用 gogo marshaler 尝试类似的方法时(因为我的 grpc 运行时使用 gogo),我得到下面提到的错误。

错误:

结构CreateAnyResponse

我尝试在本地克隆和自定义AnyResolver并使用gogoproto.Message,但在编组后数据未编组 After Marshal Resp is : {"object":{"@type":"type.googleapis.com/foo.Bar"}}

有没有办法使用gogojsonpb marshaller 转换这些动态原型?

0 投票
1 回答
739 浏览

google-cloud-firestore - 使用结构(或 protobuf 消息)作为数据更新 Golang 中的 Firestore 文档

给定以下 API:

此 API 与后端 Firestore“foos”集合对话。
实现是在 Golang 中。该firestore有一个Update()方法,但它需要提供一个firestore.Update结构列表:

我在编写 RPC 的实现时遇到问题UpdateFoo:我不能轻易地构造firestore.Update结构。同时,我要确保提供的路径update_mask是有效的。

这就是我正在尝试的:

任何提示将不胜感激。

0 投票
3 回答
5067 浏览

go - 从不同的包导入 proto 文件会导致“缺少方法 protoreflect”

我是 Go 和 Protobufs 的新手,因此这可能是一个非常菜鸟的问题。对此感到抱歉。

我的 go 项目中有几个包,我想创建一个单独的包,其中包含我所有的 .proto(也是 .pb.go)文件,然后我可以将这些 proto 文件导入任何其他包中,以更好地管理我的所有 proto 文件。

但是当我将我的 proto 文件移动到一个名为“prototemps”的单独包中并将“prototemps”导入另一个名为“reader”的包中时。在 reader.go 中,我这样做:

它产生这个错误

这是我的项目结构的样子:

这是我的 .proto 的样子

这是我使用 * protoc --go_out= 生成的 .pb.go。.proto

任何帮助将不胜感激,谢谢!

0 投票
1 回答
80 浏览

go - 如何使用 protoreflect 在 Go protobuf slice 字段中添加一个 nil 条目?

我生成的 protobuf Go 结构如下所示:

我现在正在尝试nil使用protoreflect.

我试过:

它惊慌失措:

类型不匹配:无法将 nil 转换为消息