» gRPC快速入门:Go语言 » 3. 创建 proto 文件 » 3.2 生成客户端和服务端代码

生成客户端和服务端代码

接下来,我们需要从 .proto 服务定义文件中生成 gRPC 客户端和服务端接口。我们使用 protocol buffer 编译器 protoc 以及一个 gRPC Go 插件来生成文件。

examples/route_guide 目录中,运行以下命令:

protoc --go_out=. --go_opt=paths=source_relative \
    --go-grpc_out=. --go-grpc_opt=paths=source_relative \
    routeguide/route_guide.proto

运行此命令将在 routeguide 目录中生成以下文件:

  • route_guide.pb.go,其中包含填充、序列化和获取请求和响应消息类型的所有 protocol buffer 代码。
  • route_guide_grpc.pb.go,其中包含以下内容:
    1. 一个用于客户端调用 RouteGuide 服务中定义的方法接口类型(或存根)。
    2. 一个用于服务端实现 RouteGuide 服务中定义的方法的接口类型。