拥有不同数量属性的JSON对象是否可以?

时间:2014-02-25 10:31:19

标签: json api rest

我正在为我的移动应用设计API响应,响应应该包含一系列操作。其中一些可能具有所有属性,有些可能没有,请参见示例:

{
"operations":[
        {
            "type":"0",
            "location":"01"
        },
        {
            "type":"1",
            "location":"1234"
            "item_id":"",
            "item_name":"Item A",
        }
    ]
}

这是一个好方法,还是我应该重新考虑我的设计?我的意思是不同数量的属性。谢谢!

2 个答案:

答案 0 :(得分:1)

虽然带宽可以将属性保留在没有值的json字符串之外。但我会建议你保持其他方式,发送null或空字符串""它将在解码端提供帮助

{
"operations":[
        {
            "type":"0",
            "location":"01"
            "item_id":null,
            "item_name":null,
        },
        {
            "type":"1",
            "location":"1234"
            "item_id":"",
            "item_name":"Item A",
        }
    ]
}

答案 1 :(得分:0)

这取决于您将要编写的代码来处理对象:)只要您编写代码来处理缺少的元素就可以了。

如果数组中的对象与其他对象的结构匹配,则Javascript无法发出声音,如果这是您关注的内容。

p.s:看那些逗号!他们让我比其他任何事情更悲伤:p IE会打破一个尾随的逗号:(