如何使用piqi定义从c++通过Java读取JSON数据

How can I read JSON data from C++ through Java using a piqi definition

本文关键字:Java 读取 JSON 数据 通过 c++ 何使用 piqi 定义      更新时间:2023-10-16

我们使用第三方REST web服务,该服务使用piqi模式定义json API。我们当前的体系结构需要通过java客户机读取这些数据,并将其转换为c++二进制文件。理想情况下,我希望生成所有pojo和c++结构,以及数据转换(json->java, java->c++)逻辑。我一直在研究protobuf, protostuff和thrift的不同组合,但在这个过程中仍然存在空白。有人有什么建议吗?

作者在此。最有可能的是第三方API提供程序使用piqi-rpc通过HTTP API公开JSON。假设您拥有最新的服务.piqi定义,那么您就有机会以Protocol Buffers格式而不是JSON格式获得输出和/或发送输入数据。在Java和c++中处理Protobuf比处理JSON更容易、更可靠。

除非API提供程序明确禁止使用协议缓冲区作为输入/输出格式,否则您应该能够通过将Accept头(和Content-Type作为输入参数)设置为application/x-protobuf来使用此格式。我只是想试试,看看它是否有效。如果没有,你可以要求提供商打开它。