之前我使用过Protobuf,我正在研究Thrift,但我想知道编译到(至少)C#,JS,Objective C和Java的IDL的选项是什么,还要序列化/反序列化所有这些语言的JSON。 Thrift主要是这样做的,但在OC中并不支持JSON,我担心(可能没有根据)JSON接口的成熟度。是否有任何IDL使用JSON作为其主要序列化,但也编译为上面列出的所有语言中的强类型绑定?
谢谢!
答案 0 :(得分:0)
关于Thrift:如果有任何序列化协议可以被认为是“主要”,它肯定是二进制格式。但是,我们努力为每种语言引入一组通用的最小协议和传输,其中一种是JSON。
接下来,请记住Thrift's JSON format might not be what you expect。 JSON格式专为Thrift设计,主要目标是紧凑的数据表示。对于某些语言也可用的SimpleJSON协议更加逐字,但最初设计为只写(尽管现在这个观点略有变化)。
我担心(可能没有根据)关于其JSON接口的成熟度
老实说,没有什么值得关注的。关于正确的字符串编码有一些与PHP相关的问题,但是它可以正常工作 - when available for the language of choice。如果您不介意,编写JSON传输并不困难,我们总是welcome quality contributions。如果您在此过程中需要帮助,请询问邮件列表。