ruby - 在 ruby 或 java 中加载协议缓冲区,类似于节点
问题描述
我有一个.proto
包含我的架构和服务定义的文件。我正在 ruby/java 中寻找一种类似于 Node 加载和解析它的方法(下面的代码)。看着 grpc ruby gem,我没有看到任何可以复制 Node 是如何做到的。
挖掘我看到这个(https://github.com/grpc/grpc/issues/6708)它指出动态加载.proto
文件仅在节点中可用。希望有人可以为我提供替代方案。
用例:按照客户端提供的动态加载.proto
文件,但我只能使用 ruby 或 java 来完成。
let grpc = require("grpc");
let loader = require("@grpc/proto-loader");
let packageDefinition = loader.loadSync(file.file, {});
let parsed = grpc.loadPackageDefinition(packageDefinition);
解决方案
在过去的几个月里,我一直在尝试这个,似乎 Node 是在运行时读取 protobuf 文件的唯一方法。希望这可以帮助将来需要它的任何人。
推荐阅读
- assembly - Putchar 函数 x86 程序集后导致访问冲突,无论 Putchar 后调用如何
- node.js - Discord 机器人两次发送响应
- angular - 对菜单中的项目进行排序 (Az)
- docker - 如何在本地访问 nginx 入口?
- c# - 按共同的用户 id linq 对两个列表进行分组
- r - R不会为变量赋值,但不会抛出错误
- cakephp - CakePHP 3.8 - 如何在视图中访问 webroot 的公共路径?
- python - 使用另一个列表和索引列表生成列表
- c - 网络服务器和文件的字节顺序
- python - PyTorch:retain_graph=True 在交替优化中是否必要?