问题标签 [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.
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并使用gogo
proto.Message,但在编组后数据未编组
After Marshal Resp is : {"object":{"@type":"type.googleapis.com/foo.Bar"}}
有没有办法使用gogo
jsonpb marshaller 转换这些动态原型?
google-cloud-firestore - 使用结构(或 protobuf 消息)作为数据更新 Golang 中的 Firestore 文档
给定以下 API:
此 API 与后端 Firestore“foos”集合对话。
实现是在 Golang 中。该firestore
包有一个Update()
方法,但它需要提供一个firestore.Update
结构列表:
我在编写 RPC 的实现时遇到问题UpdateFoo
:我不能轻易地构造firestore.Update
结构。同时,我要确保提供的路径update_mask
是有效的。
这就是我正在尝试的:
任何提示将不胜感激。
go - 从不同的包导入 proto 文件会导致“缺少方法 protoreflect”
我是 Go 和 Protobufs 的新手,因此这可能是一个非常菜鸟的问题。对此感到抱歉。
我的 go 项目中有几个包,我想创建一个单独的包,其中包含我所有的 .proto(也是 .pb.go)文件,然后我可以将这些 proto 文件导入任何其他包中,以更好地管理我的所有 proto 文件。
但是当我将我的 proto 文件移动到一个名为“prototemps”的单独包中并将“prototemps”导入另一个名为“reader”的包中时。在 reader.go 中,我这样做:
它产生这个错误
这是我的项目结构的样子:
这是我的 .proto 的样子
这是我使用 * protoc --go_out= 生成的 .pb.go。.proto
任何帮助将不胜感激,谢谢!
go - 如何使用 protoreflect 在 Go protobuf slice 字段中添加一个 nil 条目?
我生成的 protobuf Go 结构如下所示:
我现在正在尝试nil
使用protoreflect
.
我试过:
它惊慌失措:
类型不匹配:无法将 nil 转换为消息