Ember.js,throttle REST适配器调用
我使用的是Parse,它只允许30个请求/秒到达后端 因此,我想限制所有通过REST适配器解析的调用(特别是扩展了Ember.js,throttle REST适配器调用,ember.js,ember-data,Ember.js,Ember Data,我使用的是Parse,它只允许30个请求/秒到达后端 因此,我想限制所有通过REST适配器解析的调用(特别是扩展了DS.RESTAdapter) 我尝试限制ajax方法,我认为它需要返回一个承诺: export default ParseAdapter.extend({ applicationId: ENV.APP.applicationId, restApiId: ENV.APP.restApiId, ajax: function(url, type, options
DS.RESTAdapter
)
我尝试限制ajax
方法,我认为它需要返回一个承诺:
export default ParseAdapter.extend({
applicationId: ENV.APP.applicationId,
restApiId: ENV.APP.restApiId,
ajax: function(url, type, options) {
var self = this;
return new Ember.RSVP.Promise(function(resolve, reject) {
Ember.run.later(this,resolve,5000); // I would prefer this to be Ember.run.throttle, but not sure if that will work
}).then(function() {
return self._super(url,type,options)
});
}
});
但是我得到了这个错误:
TypeError: Cannot read property 'results' of undefined
at exports.default.DS.default.RESTSerializer.extend.extractArray (vendor.js:115817)
at apply (vendor.js:30197)
at superWrapper (vendor.js:29749)
at ember$data$lib$system$serializer$$default.extend.extractFindAll (vendor.js:81161)
at ember$data$lib$system$serializer$$default.extend.extract (vendor.js:81144)
at superFunction [as _super] (vendor.js:25863)
at exports.default.DS.default.RESTSerializer.extend.extract (vendor.js:115843)
at apply (vendor.js:30197)
at superWrapper [as extract] (vendor.js:29749)
如何限制REST适配器?如果我理解正确,您希望同时批处理API请求吗 我自己也不知道最好的方法,但是一个开始寻找的好地方可能是这个Ember CLI插件