我有一个非常基本的路由器定义如下:
App.Router.map(function() {
this.resource('folders', {path: "/"}, function() {
this.resource('folder', {path: "/folder/:folder_id"});
});
});
一个简单的FoldersRoute,带有许多用于解决问题的日志记录钩子:
App.FoldersRoute = Ember.Route.extend({
model: function() {
return this.store.find('folder');
},
actions: {
loading: function() {
console.log("FoldersRoute: action(loading)");
},
didTransition: function() {
console.log("FoldersRoute: action(didTransition)");
},
willTransition: function() {
console.log("FoldersRoute: action(willTransition)");
},
error: function(error, transition) {
console.log("FoldersRoute: action(error)");
}
}
});
此外,我正在使用DS.RESTAdapter
连接到远程服务器。
我的问题是页面加载时间长达10多秒,我发现FoldersRoute正在阻塞:
FoldersRoute: action(loading)
如果我在服务器端登录,我发现在阻止时没有收到任何请求,只有在传递了will / didTransision之后才会收到请求。
使用google devtools进行网络同意。
如果我运行curl "http:/.../folders
,则立即发送/接收请求/响应。
真正奇怪的是,有时当我第一次启动浏览器时,它运行良好,只有在事后刷新它才会变慢。
Chrome浏览器上的REST是否存在某些已知问题或其他我做错了什么?
DEBUG: Ember : 1.7.0
DEBUG: Ember Data : 1.0.0-beta.10
DEBUG: Handlebars : 1.1.2
DEBUG: jQuery : 1.10.2
答案 0 :(得分:0)
事实证明,性能问题是由python -m SimpleHTTPServer
(argh)引起的。
当我直接从浏览器加载index.html
文件或使用adsf
时,一切正常。