protoful 中的 rpc定义公式
Posted projectdd
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了protoful 中的 rpc定义公式相关的知识,希望对你有一定的参考价值。
通过vs2019的.net core3.1 的项目试错,我发现的相关proto rpc的规则是
rpc 方法名称(输入消息) returns(输出类型)
上面公式全部不能省略,并且 输入输出消息 全部只能是1可以计为方便记忆 可以表达 为下面这个样子:
rpc RemoteCallName(InputMessage<1>) returns(ReturnMessage<1>);
RemoteCallName 这是用户自己编辑的名称 InputMessage,ReturnMessage是 proto 文件中定义的message 的名称
下面这些全部是错的
rpc RemoteCallName(InputMessage<0>) returns(ReturnMessage<1>);
rpc RemoteCallName(InputMessage<0>);
rpc RemoteCallName(InputMessage<1>);
rpc RemoteCallName(InputMessage<n>);
rpc RemoteCallName(InputMessage<0>) returns(ReturnMessage<0>);
rpc RemoteCallName(InputMessage<n>) returns(ReturnMessage<1>);
这些签名在大部分语言中是常情,但proto里不能
<n> 就是 InputMessage1,InputMessage2, .. 用逗号分开的message类型,这里也不允许多个
所以grpc的形式非常固定
以上是关于protoful 中的 rpc定义公式的主要内容,如果未能解决你的问题,请参考以下文章