哪种传输JSON数据的方式更优化?

时间:2018-03-26 12:25:40

标签: java php android json apache

我正在发送大量数据。什么是更优化的:用符号连接数据或将其作为JSONArray发送?

数据正在从Android客户端发送到Apache PHP。

合并数据的示例:

data1_data2_data3_data4

JSONArray的示例

{ "Data": [data1, data2, data3, data4] }

4 个答案:

答案 0 :(得分:1)

这完全取决于你的用例。从你的例子来看,这里有一些想法:

就发送的字节数而言,串联稍好一些,因为JSON添加了一些元数据和符号。

在易用性方面,JSON显然胜出,因为有图书馆和标准。如果你只有没有任何_的普通数据,那么连接数据就可以了。但是,如果您的某个数据有_,会发生什么?您将需要逃避这些并在您的代码中跟踪您的自定义格式......(而这只是冰山一角)。

总的来说,我的建议是:始终使用标准数据序列化方案。如果需要考虑序列化数据的大小,请查看二进制标准(例如protobuf)。

答案 1 :(得分:0)

这并不重要,如果你问的是以字节为单位优化传输大小,差异很小。

但是,您提供的连接数据示例将需要在收件人部分上进行更多数据处理,因为您的脚本必须剪切已发送的数据并解析将其转换为可用对象的符号。

最好坚持使用通常的JSON对象,因为我认为你不会以这种方式获得任何优化。

答案 2 :(得分:0)

取决于您对优化的意义。

实际上,即使您使用自定义函数/类与一些内置函数(如来自PHP的json_decode)解析它,时间差异也会相当小或无关紧要。

如果你能坚持标准,那就去做吧。将它作为正确的JSON发送,而不是一些奇怪的连接字符串。

优点胜过其他任何事情。

答案 3 :(得分:0)

将优化concat数据,但您要确保您的数据没有“_”或正确处理分隔符。