是否可以更改商店snync()请求使用的dafault方法POST。
我尝试过以下但是没有用。我想将方法从POST改为PUT。
我知道我可以写一个自定义的Ajax请求,但是有没有办法用store sync()函数完成呢?
store.sync({
method: 'PUT',
scope:this,
callback: function(batch, options){
},
success : function(batch, options) {
},
failure : function(batch, options) {
}
});
}
我也尝试过这种方法但没有成功:
store.getProxy().method = 'PUT';
答案 0 :(得分:0)
在商店的代理配置中,您可以配置api为每种类型的操作制定特定的请求方法。
例如:
proxy: {
type: 'ajax',
actionMethods: {
create: 'POST',
read: 'GET',
update: 'POST',
destroy: 'POST'
},
batchActions: false,
api: {
create: 'foo/sample.json',
read: 'bar/sampleB.json',
update: 'test/test.json',
destroy: 'admin/testa.json'
},
reader: {
type: 'json',
root: 'data'
},
writer: {
type: 'json'
}
}
修改强>
上面的代码是从Sencha Architect生成的,但如果您不使用Architect,您可以在REST代理上定义api操作,如下所示:
proxy: {
type: 'rest',
api: {
create: {url: 'foo/sample.json', method: 'POST'},
read: {url: 'bar/sampleB.json', method: 'GET'},
update: {'test/test.json', method: 'PUT'},
destroy: {'admin/testa.json', method: 'POST'}
}
}