草庐IT

protobuf-LiteralByteString

全部标签

go - 从 golang 中的 fixed64 protobuf 字段读取 int64

我在.proto文件中有一个类型为fixed64的字段。我想将其作为int64字段读取:score:=int64(pb_obj.Score)当我尝试编译上述行时,我收到错误消息cannotconvertpb_obj.Score(type*uint64)totypeint64。我也尝试转换uint64,得到了几乎相同的消息。 最佳答案 pb_obj.Score的类型似乎是*uint64(指向uint64的指针),而不是uint64.您只需要访问指针引用的值:score:=int64(*pb_obj.Score)(区别见*前缀)

go - Dockerfile 中 Protobuf 的 Go Get 出错

这是我的Dockerfile:FROMgolangRUNapt-getupdateRUNgoget-ugithub.com/golang/protobuf/{proto,protoc-gen-go}这会产生这个错误:packagegithub.com/golang/protobuf/{proto,protoc-gen-go}:invalidgithub.com/importpath"github.com/golang/protobuf/{proto,protoc-gen-go}"但是,如果我取出RUN指令,并在docker容器中加载/bin/bash,我可以运行goget命令就好了。这

go - 替代或 github.com/gogo/protobuf/parser 包

我正在搜索一个包来解析protobuf文件,然后找到这个[1]:github.com/gogo/protobuf/parser但是,当我尝试执行gogetgithub.com/gogo/protobuf/parser时,没有这样的包。有人知道这个包的另一种选择吗?[1]https://libraries.io/go/github.com%2Fgogo%2Fprotobuf%2Fparser 最佳答案 您正在使用来自Libraries.io的非官方和旧文档。使用最新的官方文档,并按照安装说明进行操作。GowithGadgets的Pro

go - JSON 对我来说比 Protobuf/gRPC 快得多,Go 作为服务器,PHP 作为客户端

也许我有点忽略了Protobufs的意义,但我花了一些时间来实现它,因为与我当前的JSON设置相比,我希望获得原始速度。我的用例是这样的:一个大型、复杂的PHP应用程序(不是网站),在生产中并且被大量使用。我们现在正试图将我们的应用程序拆分成更小的部分,针对每个问题用合适的语言编写。我拆分出来的第一个服务对字符串进行处理和转换,非常特定于领域并且不是很有趣。涉及大量正则表达式、自定义解析等。我在Go中实现了我的域逻辑,它工作得很好并且很容易上手。我使用Go-Kit将我的逻辑附加到一个简单的JSONAPI。是一个非常简单的转换,json编码简单到类似{"v":"somestringusu

arrays - 如何将 JSON 数组建模为 protobuf 定义

我正在使用protobuf在golang中编写一个新服务。我想在.proto文件中对以下请求JSON进行建模。[{"var":["myVariable1","myVariable2"],"key1":123123,"key2":1122,"key3":"abcd-0101"},{"var":["myVariable1"],"key1":123124,"key2":1123,"key3":"abcd-0102"},]目前有两个问题:事先不知道每个数组元素中的键,因此我无法在.proto文件中创建消息并使其重复。我需要保留它的map我无法为json建模,它只是一个没有键的数组。每次我这样做

go - makefile 中的 protoc 以构建 protobuf

我已经像https://github.com/google/protobuf/blob/master/src/README.md上的教程一样安装了ProtocolBuffer之后我想构建protobuf并使用如下命令安装go库:goget-ugithub.com/grpc-ecosystem/grpc-gateway/protoc-gen-grpc-gatewaygoget-ugithub.com/grpc-ecosystem/grpc-gateway/protoc-gen-swaggergoget-ugithub.com/golang/protobuf/protoc-gen-goma

go - 使用 Go 工具编译 Protobuf

有没有什么好的方法可以将protobuf编译与gobuild命令集成? 最佳答案 goprotobuf“以库和协议(protocol)编译器插件的形式为Google的ProtocolBuffer提供Go支持”。README在goprotobuf图书馆有一些很好的信息。来自https://code.google.com/p/goprotobuf/source/browse/README#106:Considerfiletest.proto,containingpackageexample;enumFOO{X=17;};messageT

go - 如何在 go protobuf 中获取具体类型的 slice (不是指针)

对于原型(prototype):syntax="proto3";packagemessagepb;import"github.com/gogo/protobuf/gogoproto/gogo.proto";option(gogoproto.marshaler_all)=true;option(gogoproto.sizer_all)=true;option(gogoproto.unmarshaler_all)=true;option(gogoproto.goproto_getters_all)=false;serviceKV{//Putputsthegivenkeyintothesto

go - 有没有办法在 golang 中自定义 Marshaling Protobuf?

有没有一种方法可以像encoding/json为custommarshal/unmarshaljson提供方法一样自定义marshal/unmarshalprotobuf?在戈朗? 最佳答案 更新:proto3go库(https://google.golang.org/protobuf/proto)不再支持自定义编码。弃用:GoDoc提到Marshaler和Unmarshaler接口(interface)。typeMarshalerinterface{Marshal()([]byte,error)}typeUnmarshalerin

json - "google/protobuf/struct.proto"是通过 GRPC 发送动态 JSON 的最佳方式吗?

我写了一个简单的GRPC服务器和一个调用服务器的客户端(都在Go中)。请告诉我使用golang/protobuf/struct是否是使用GRPC发送动态JSON的最佳方式。在下面的示例中,我之前将Details创建为map[string]interface{}并将其序列化。然后我将它作为bytes在protoMessage中发送,并在服务器端反序列化消息。这是最好/最有效的方法还是我应该在我的原型(prototype)文件中将Details定义为一个结构?下面是User.proto文件syntax="proto3";packagemessages;import"google/proto