【发布时间】:2020-08-01 17:00:57
【问题描述】:
我有一个类似于下面给出的数据结构,我应该处理它。我正在设计一个 API,它应该接受类似于下面给出的 POST 请求。 (忽略标题等)
{
"Name" : "Johny English",
"Id": "534dsf",
"Message":[
{
"Header":"Country of origin",
"Value":"England"
},
{
"Header":"Nature of work",
"Value":"Secret Agent/Spy"
}
]
}
有些我不觉得,这是传递/接受数据的正确方法。在这里,我谈论的是结构化数据与键值对。虽然我可以将字段(“Name”、“Id”)直接提取到对象属性,但对于键值对,我需要遍历集合并与字符串(例如“工作性质”)进行比较以提取价值观。
我搜索了几个站点,寻找任何最佳实践,无法得出任何结论。是否有任何最佳实践、建议等。
【问题讨论】:
-
这是关于如何构建 JSON 数据的开发人员方法。根据对象及其价值来构造数据总是更好的。这种方法将更容易执行不同的操作,同时也很容易检索数据。仅在确实需要保留时才将对象保留在 Array 中。
-
我同意@Bibek。根据对象构造数据总是更好,因为很容易将发布的值反序列化到对象中。否则,您将不得不编写自定义逻辑来反序列化键值对中的数据。
-
奇怪,没有关于这个话题的具体讨论。因为我觉得这两种方法都同样被接受。
标签: json rest data-structures api-design