【发布时间】:2014-07-17 12:57:44
【问题描述】:
在阅读了关于 REST 响应中的嵌套结构的出色线程 REST Complex/Composite/Nested Resources 之后,我仍然有一个问题。就响应的性能而言,最佳选择是什么?
举个例子吧。
我有一个Category 对象,其中包含一些Questions。那些Questions 包含一些Answers。所有这些结构都有元信息。
现在,当查询像 GET http://<base_url>/categories/ 这样的 url 时,我是否应该只包括类别的描述,包括问题描述?哪一个,完整的描述还是简化的?
换句话说,它们之间的最佳解决方案是什么:
{
"results":[
{
'id':1,
'name':'category1',
'description':'foobar',
'questions':[
{
'id':1234,
'question':'My question',
'author' : 4235345,
'answers':[
{
'id':56786,
'user':456,
'votes':6,
'answer':'It's an answer !'
},
{
'id':3486,
'user':4564,
'votes':2,
'answer':'It's another answer !'
},
]
},
...
]
}
...
]
}
或解决方案 2:
{
"results":[
{
'id':1,
'name':'category1',
'description':'foobar',
'questions':[
{
'id':1234,
'url':'http://foobar/questions/1234'
'answers':[
{
'id':56786,
'url':'http://foobar/answers/56786'
},
{
'id':3486,
'url':'http://foobar/answers/3486'
},
]
},
...
]
}
...
]
}
或解决方案 3:
{
"results":[
{
'id':1,
'name':'category1',
'description':'foobar',
'questions':'http://foobar/categories/1/questions'
}
...
]
}
或者也许是另一种解决方案?
谢谢!
【问题讨论】:
标签: rest cross-reference