一尘不染

如何在JSON中表达XML标签属性?

json

我正在为我的Web应用程序设计API。

我正在考虑仅支持JSON响应(不支持XML),因为它更加简化。

但是我刚刚碰到了这个XML:

<folders>
    <folder id="123" private="0" archived="0" order="1">Shopping</folder>
</folders>

我想知道对应的JSON会如何。我的感觉是,在这种情况下,XML会更紧凑。


阅读 663

收藏
2020-07-27

共1个答案

一尘不染

也许:

{
  "folders": [
    { "id":123, "private":0, "archived":0, "order":1, "title":"Shopping" },
    ...
  ]
}

因为XML和JSON之间 没有
确切的对应关系,所以您可以自由地(例如必须定义)这两个数据结构的映射方式。例如,在上面,“文件夹”元素隐含在“文件夹”数组中的嵌套对象中。

可以将其扩展为:

"folders": [{"folder": { .... }]

等等,但是仍然 存在无法 像XML一样一致 地捕获内容和属性 的问题。无论如何,您的数据结构-> JSON |
XML序列化程序都可能以特定的方式工作( 请使用库,而不是“手动滚动”的JSON-string-munging )。那是;
XML和JSON的格式应由用于传输的数据结构统一规定(以某种方式)。

2020-07-27