【发布时间】:2012-09-27 11:18:07
【问题描述】:
我有一个由 Backbone.js 提供支持的单页 Web 应用程序正在使用的小型 REST API
API 提供两种资源类型,因此 Backbone 应用使用。这些是文章和cmets。这两个资源具有不同的端点,并且每篇文章都有一个链接到该项目的所有 cmets 的位置。
我面临的问题是,在我的网络应用程序的文章列表中,我希望能够显示每篇文章的 cmets 数量。鉴于只有在我还获得 cmets 列表的情况下才有可能,在当前设置中,将要求我发出一个 API 请求来获得初始文章列表,并为每篇文章发出另一个请求,以便能够计算数量cmets。例如,如果有 100 篇文章,这将成为一个问题,因此需要 101 个 HTTP 请求来填充一个视图。
我现在能想到的解决办法是:
1.在最初的文章中包含 cmets 数据这样的请求
{
{
"id": 1,
"name": "Article 1",
...
"comments": {
{
"id": 1,
"text": "some comment"
},
{
"id": 2,
"text": "some comment"
},
...
}
},
}
本例中的问题是:如何将“cmets”解析为单独的 cmets 集合而不包含在文章模型中?
2。在文章响应中包含一些元数据,如下所示:
{
{
"id": 1,
"name": "Article 1",
...
"comments": 13
},
}
引发问题的选项:我应该如何处理模型的解析,以便一方面元信息可用,另一方面,“cmets”属性不是 Backbone 会尝试执行更新的一个开吗?
我觉得可能有另一种解决方案,符合 REST 哲学,对此我错过了,所以如果您有任何其他建议,请告诉我。
【问题讨论】:
标签: rest backbone.js relationship