登录
首页 >  Golang >  Go问答

如何从xxx.pb.go文件中提取服务描述信息

来源:stackoverflow

时间:2024-03-01 16:03:26 323浏览 收藏

大家好,我们又见面了啊~本文《如何从xxx.pb.go文件中提取服务描述信息》的内容中将会涉及到等等。如果你正在学习Golang相关知识,欢迎关注我,以后会给大家带来更多Golang相关文章,希望我们能一起进步!下面就开始本文的正式内容~

问题内容

当我使用xxx.proto生成golang protobuf文件时

我明白了

...

var _Auth_serviceDesc = grpc.ServiceDesc{
    ServiceName: "protobuf.Auth",
    HandlerType: (*AuthServer)(nil),
    Methods: []grpc.MethodDesc{
        {
            MethodName: "GenerateToken",
            Handler:    _Auth_GenerateToken_Handler,
        },
    },
    Streams:  []grpc.StreamDesc{},
    Metadata: "auth.proto",
}

如何从该包中获取 servicedesc

我想获取服务名称和方法


解决方案


访问服务和方法的唯一方法是通过原始文件的 FileDescriptorProto。或者,v2 proto API 包含一个变量,该变量将包含描述符 proto,以防您不知道文件名(请注意,单个 proto 包可能包含多个文件)。

请参阅 https://github.com/golang/protobuf/issues/489 了解有关此主题的更多讨论(特别是 dsnet 关于 v2 proto API 在这方面如何工作的最后评论)。

今天关于《如何从xxx.pb.go文件中提取服务描述信息》的内容就介绍到这里了,是不是学起来一目了然!想要了解更多关于的内容请关注golang学习网公众号!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>