我在开发,代码质量或简单标准方面考虑,这是在考虑例如在@GET或@PUT方法上管理相同对象时在JSON中构造信息的最佳方式。
请查看示例:
想象一个API,它有一个@GET方法,它返回一组数据,这组数据包含一个类别:
{....
"category":{
"id": 1,
"name":"categoryName"
},
...}
如您所见,cathegory被定义为具有ID和名称的对象。这些信息显然是以UI为目的发送到前端的。尽管如此,如果前端修改此对象并执行@PUT以更新后端中的数据,则会通过以下方式指定导管:
{....
"category":1,
...}
正如你在那里看到的那样,导管的结构已经改变了。
这是正确/正确/最好的处理方法,保持相同的结构(就像在第一个snipet上一样)或考虑使用另一个(如第二个snipet),例如,在打字时前端编程语言导致创建新的对象/属性。
提前致谢!
答案 0 :(得分:1)
无论您使用何种方法,您的Category
对象应该/将始终保持相同的结构。
以下是一个伪方法,它将返回所有Categories
GET /categories
Response:
[
{
"id": 1,
"name": "Something",
"special": true
},
{
"id": 2,
"name": "Another",
"special": false
}
]
现在,如果您要更新特定的Category
PUT /categories/{id}
Body
{
"id": 1, //Technically, this is an optional field
"name": "Something has changed",
"special": false
}
正如您所看到的,结构是相同的 - 这是您应该努力的目标。