我正在努力弄清楚我在JSON中列出对象的方法是否正确/有效。我正在创建一个API,让用户以各种方式搜索引擎并获取相关信息。因此,每个“引擎”对象都有几个键/值对,每个“引擎”都是不同的。我当前的格式是:
{
"engines": [
{
"name": "Ford Modular Engine 3-valve",
"maker": "Ford",
"cam": "SOHC"
},
{
"name": "LS6",
"maker": "Chevy",
"cam": "OHV"
}
]
}我对这种格式的关注是访问一个特定的引擎,因为它隐藏在一个数组下。
我的另一个格式想法是这样的(但我不确定这是否是JSON对象的“适当”语法)
{
"engines": {
"ford3v": {
"name": "Ford Modular Engine 3-valve",
"maker": "Ford",
"cam": "SOHC"
},
"ls6": {
"name": "LS6",
"maker": "Chevy",
"cam": "OHV"
}
}
}这种差异归结为个人偏好吗?什么是行业标准?
发布于 2017-02-15 00:40:21
在大多数情况下,选项将取决于您的要求。最好使用下面的格式,因为如果你想在html中重复这个列表,这对你来说会很容易。
{
"engines": [
{
"name": "Ford Modular Engine 3-valve",
"maker": "Ford",
"cam": "SOHC"
},
{
"name": "LS6",
"maker": "Chevy",
"cam": "OHV"
}
]
}发布于 2017-02-15 00:53:10
我选择第一个选项,因为您的搜索API暗示它将是返回的引擎对象的列表。使用JSON时,我倾向于将对象看作已知属性的键值对,因此迭代列表并知道在这些对象上查找属性以执行任何过滤更简单。
由于不知道您编写此API的具体情况,我不相信消费者知道通过您在第二个示例中提供的键/属性来查找特定的引擎,特别是如果它只是复制对象中已经存在的字段(名称)。
https://stackoverflow.com/questions/42231488
复制相似问题