2024-05-11 17:43:38 +08:00

49 lines
1.2 KiB
Protocol Buffer

//bytes替代string 防止乱码
syntax = "proto3";
package stream;
//ption cc_generic_services = true;
option java_multiple_files = true;
option java_package = "io.grpc.examples.stream";
option java_outer_classname = "StreamProto";
option objc_class_prefix = "ST";
enum TYPE{
iBOOL = 0;
iSHORT = 1;
iUSHORT = 2;
iINT = 3;
iUINT = 4;
iFLOAT = 5;
iSTRING = 6;
}
message ParamInfo{
bytes nameKey = 1; //参数key
bytes strValue = 2; //value
TYPE valueType = 3; //数据类型
}
message RequestInfo {
uint32 dataType = 1; //信息类型
bytes nameKey = 2; //参数key
bytes strValue = 3; //value值
TYPE valueType = 4; //value数据类型
}
message ResponseInfo {
uint32 dataType = 1; //信息类型
bool result = 2; //执行成功与否
repeated ParamInfo item = 3; //参数值
}
service Stream {
rpc Simple(RequestInfo) returns (ResponseInfo) {} // 简单模式
rpc ServerStream (RequestInfo) returns (stream ResponseInfo) {} // 服务端数据流模式
rpc ClientStream (stream RequestInfo) returns (ResponseInfo) {} // 客户端数据流模式
rpc AllStream (stream RequestInfo) returns (stream ResponseInfo) {} // 双向数据流模式
}