我期待findByIds通过在GET请求中请求多条记录来优化请求。相反,在我的应用程序中,Ember Data会为每条记录发出一个单独的HTTP GET请求,而不是将所有请求捆绑到一个请求中。我有一个句柄模板显示数十甚至数百个小记录,并且它使用许多HTTP请求来洪泛服务器,而不仅仅是一个。为什么不是Ember Data将多个记录请求分批处理成一个HTTP请求?
这里是我如何请求与findByIds记录:
App.ThingRoute = Ember.Route.extend({
model: function (params, transition) {
return this.store.findByIds('thing', [4,65,22]);
}
}
下面是该相关请求和响应的总结发现:
http://example.com/things/4
{"things":[{"id":"4", "name":"foo"}]}
http://example.com/things/65
{"things":[{"id":"65", "name":"bar"}]}
http://example.com/things/22
{"things":[{"id":"22", "name":"baz"}]}
假设没有任何的记录都在本地缓存,我会期望Ember数据发出单一请求:
http://example.com/things/4,65,22
并取回这样的回应:
{"things":[
{"id":"4", "name":"foo"},
{"id":"65", "name":"bar"},
{"id":"22", "name":"baz"}
]}
这比一些将q &一个我见过的询问在响应侧加载数据的不同。
移动我的评论回答。 – user3158114 2014-09-29 16:21:20