Ember js RESTAdapter PUT请求将.json添加到最后

时间:2013-08-15 14:28:36

标签: rest ember.js put

我一直在努力学习Ember,我有一个问题。

在我的商店里,我从.json获取数据,如下所示。我试过没有buildUrl函数,但无法加载json文件,然后在SO上找到了这个解决方案。

CocktailApp.Store = DS.Store.extend({
revision: 12,
adapter: DS.RESTAdapter.extend({
    bulkCommit: false, 
    url: "http://localhost:8888",    
    buildURL: function(record, suffix) {
        var s = this._super(record, suffix);
        return s + ".json";
    }

})
});

现在我的问题是:当我提交机会时(通过按添加到favs或从favs中删除)RESTAdapter在PUT请求结束时添加“.json”。请参阅以下代码和屏幕截图

CocktailApp.CocktailController = Ember.ObjectController.extend({
addToFav: function () {
this.set('fav',true);
this.get('store').commit();
},
removeFromFav: function () {
this.set('fav',false);
this.get('store').commit();
} 
});

enter image description here

我认为这就是为什么我的PUT请求无法处理的原因。但是,如果我删除了builtURL函数,根本没有加载json。我该如何解决这个问题? 感谢

1 个答案:

答案 0 :(得分:0)

如果API端点网址末尾不需要.json,请从buildURL功能中删除该行。我的猜测是你得到的示例代码是使用rails api上的ruby,或类似的东西。

请记住,当您向网址发送GET,PUT,POST或DELETE时,该网址实际上必须是真正的端点。你不能只是添加无关的东西,让它仍然有用。