gRPC服务调用+protoc 生成swagger API文档

本文档详细介绍了如何在Ubuntu 18.04环境下,通过gRPC、Protocol Buffers v3以及相关插件安装,编写proto文件并编译生成Go源码及swagger.json。接着,利用docker启动Swagger UI服务来展示API文档,同时阐述了如何编写和调用RPC服务,包括server.go和client.go的实现,并提供了完整的项目目录结构。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、环境

  • 操作系统:ubuntu 18.04
  • go版本:1.14.2
  • docker版本:19.03.1
  • docker-compose版本:1.24.0

2、gRPC环境安装

# 启用 module模式
GO111MODULE="on"
# 配置 goproxy
go env -w GOPROXY="https://goproxy.io,https://goproxy.cn,direct"
# 安装 grpc
$ go get -u google.golang.org/grpc

3、安装 Protocol Buffers v3

$ wget https://github.com/protocolbuffers/protobuf/releases/download/v3.11.4/protobuf-all-3.11.4.tar.gz
$ sudo tar -zxvf protobuf-all-3.11.4.tar.gz -C /usr/local
$ cd /usr/local/protobuf-3.11.4/
$ sudo ./configure
$ sudo make
$ sudo make install
$ sudo ldconfig

检查是否安装成功

$ protoc --version
libprotoc 3.11.4

4、安装插件 protoc-gen-go、protoc-gen-grpc-gateway、protoc-gen-swagger

go get -u github.com/golang/protobuf/protoc-gen-go
go get -u github.com/grpc-ecosystem/grpc-gateway/protoc-gen-grpc-gateway
go get -u github.com/grpc-ecosystem/grpc-gateway/protoc-gen-swagger

5、编写protot文件并编译

5.1 生成swagger API 文档,需要用到google/apihttp.protoannotations.proto这两个文件,先拷贝到项目目录下
# 进入项目的根目录
$ cd /path/to/project
$ mkdir -p ./proto/google/api
$ cp -r $GOPATH
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值