protoful 中的 rpc定义公式

痞子三分冷 提交于 2020-01-20 23:47:45

通过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的形式非常固定

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!