我正在开发RESTful API。我们的一个屏幕显示了总计的表格。
以下是两个用于返回数据的JSON响应
第一
[
{
"name": "Richard",
"bank_balance": 3000,
"assets_worth": 4000,
"total": 7000
},
{
"name": "John",
"bank_balance": 1000,
"assets_worth": 2000,
"total": 3000
},
{
"name": "Total",
"bank_balance":4000,
"assets_worth": 6000,
"total": 10000
}
]
第二
{
"rows": [
{
"name": "Richard",
"bank_balance": 3000,
"assets_worth": 4000,
"total": 7000
},
{
"name": "John",
"bank_balance": 1000,
"assets_worth": 2000,
"total": 3000
}
],
"grand_total":
{
"name": "Total",
"bank_balance":4000,
"assets_worth": 6000,
"total": 10000
}
}
考虑到REST标准,哪一个更正确?
答案 0 :(得分:4)
REST仅仅是用于设计网络应用程序的架构风格。它没有直接回答您关于数据结构的问题。
就我个人而言,我会选择第一种方法(只是没有总行),因为可以从行数据中轻微计算总计,结果如下:
[
{
name: "Richard",
bank_balance: 3000,
assets_worth: 4000,
total: 7000
},
{
name: "John",
bank_balance: 1000,
assets_worth: 2000,
total: 3000
}
]
我认为这里的重要设计原则是您的API不应该以数据表示为主。某些使用您的API的应用程序可能会选择以表格格式显示数据,而其他应用程序可能会选择其他一些表示形式。一个好的API能够同样满足不同的应用程序(和用例)。