背景
一般grpc的玩法就是编写proto文件, 然后生成代码. 在一个实际的项目中, 很遗憾我们遇到了类冲突问题, 就是生成service和request和别人的冲突了, 但我们的服务端已经确定了, 不太好改.
这实在是迫于无奈, 不然一般99.99%的用户都不会遇到这个case.
其实grpc可以不生成代码, 用泛化调用, 当然要多些一些些代码, 这些代码其实可以参考grpc生成的代码.
另外, grpc的request, 其实只要proto的定义(不包含名称)能对得上, 服务端就能正常解码.
因此, 我们实现了一个grpc的泛化调用. 解决了这个冲突问题.
