问题
proto文件导出swagger文档,然后导入到apifox中使用
发现summary不能换行,想加入更多的说明,不方便
description可以起到这个作用
简单的protobuf模板
syntax = "proto3";
package helloworld;
service Greeter {
rpc SayHello (HelloRequest) returns (HelloReply) {}
}
message HelloRequest {
string name = 1;
}
message HelloReply {
string message = 1;
}
常用的protobuf模板
syntax = "proto3";
package helloworld;
service Greeter {
// 打招呼。 这里的注释,可以解析到swagger get方法的summary
rpc SayHello (HelloRequest) returns (HelloReply) {
option (google.api.http) = {
get : "/api/v1/test/hello"
};
}
}
message HelloRequest {
string name = 1;
}
message HelloReply {
string message = 1;
}
解决后的protobuf模板
其中 description 可以换行,适合写入更多内容
参考 https://zhuyasen.com/post/grpc.html
syntax = "proto3";
package helloworld;
service Greeter {
// 打招呼。 这里的注释,可以解析到swagger get方法的summary
rpc SayHello (HelloRequest) returns (HelloReply) {
option (google.api.http) = {
get : "/api/v1/test/hello"
};
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
summary: "打招呼",
description: "参数name说明\n1.xxx\n2yyy",
tags: "v1.0.0",
};
}
}
message HelloRequest {
string name = 1;
}
message HelloReply {
string message = 1;
}
生成swagger如下
apifox
后续
还想将 Example 加入到protobuf中,没有找到实现方法
将这些说明加入到protobuf文件里,方便git管理