我在App.store.findAll
处理我在 Express 中设置的 GET 方法句柄的 Ember 数据请求时遇到问题。这是我正在使用的代码:
服务器:
var express = require('express');
var app = express();
app.configure(function() {
app.use(express.static(__dirname + '/public'));
app.use(express.bodyParser());
app.use(app.router);
});
app.get('/transactions', function(req, res) {
console.log('request received');
res.contentType('application/json');
res.send([{'foo':'bar'}]);
});
app.listen(8891);
客户:
var App = Em.Application.create();
App.store = DS.Store.create({
revision: 4,
adapter: DS.RESTAdapter.create({
bulkCommit: false
})
});
App.Transaction = DS.Model.extend({
foo: DS.attr('string')
});
App.transactionsController = Em.ArrayController.create({
init: function() {
this.set('content', App.store.findAll(App.Transaction));
}
});
App.TransactionsView = Em.View.extend({
templateName: 'transactions'
});
我可以毫无问题地卷曲 /transactions 路由,但数据没有传递给 Ember。查看 Chrome 中页面加载时发出的请求,我看到了对“/transactions”的请求,但该请求永远处于“待处理”状态。我添加的“收到的请求”日志记录步骤没有被调用。我究竟做错了什么?