Ext.data.store POST数据为JSON格式问题
Ext.data.store POST data in JSON format issue
我正试图让EXT JSON存储使用JSON发送数据,但它似乎不起作用。这里有一个简单的代码:
var myStore = new Ext.data.Store({
//model: 'User',
proxy: {
type: 'ajax',
url: '/users.svc',
reader: {
type: 'json',
root: 'users'
},
writer: {
type: 'json',
root: 'data'
},
actionMethods: {
create: 'POST', read: 'POST', update: 'POST', destroy: 'POST'
},
extraParams: { test: 'test' }
},
listeners: {
beforeload: function (store, operation, options) {
//alert(operation.params);
}
},
autoLoad: true
});
由于我定义了JSON"编写器",所以我期望参数应该使用JSON发送到服务器。然而,它仍然使用以下主体进行常规POST:test=test&page=1&start=0&limit=25
而我的期望是POST应该具有以下主体:{test:'test',page:1,start:0}
我将感谢的任何帮助
附言:我使用的是EXTJS 4.0.7
proxy.read始终使用params,而不是jsonData,因此store.load无法发布json
http://ahlearns.wordpress.com/2012/08/16/ext-js-4-load-a-data-store-using-json-params/
Ext.define('Ext.ux.data.proxy.JsonAjaxProxy', {
extend:'Ext.data.proxy.Ajax',
alias:'proxy.jsonajax',
actionMethods : {
create: "POST",
read: "POST",
update: "POST",
destroy: "POST"
},
buildRequest:function (operation) {
var request = this.callParent(arguments);
// For documentation on jsonData see Ext.Ajax.request
request.jsonData = request.params;
request.params = {};
return request;
},
/*
* @override
* Inherit docs. We don't apply any encoding here because
* all of the direct requests go out as jsonData
*/
applyEncoding: function(value){
return value;
}
});
希望这能有所帮助!
将proxy
定义转换为model
。
例如
Ext.define('User', {
extend: 'Ext.data.Model',
fields: ['id', 'name', 'email'],
proxy: {
type: 'ajax',
url: '/users.svc',
reader: {
type: 'json',
root: 'users'
},
writer: {
type: 'json',
root: 'data'
},
actionMethods: {
create: 'POST', read: 'POST', update: 'POST', destroy: 'POST'
},
extraParams: { test: 'test' }
}
});
然后像这样配置商店:
var myStore = new Ext.data.Store({
model: 'User'
});
存储将使用模型中指定的代理。希望这能有所帮助!
相关文章:
- 在HTML页面上将URL解析为可读的json格式
- 为DataTables aoColumnDefs创建JavaScript数组(JSON格式)
- 从Particle Photon Webhook到Azure的JSON格式
- json格式的国家数据到层次数据
- 从javascript调用C#Web服务并使用它(json格式)
- HTML表的JSON格式
- 如何将HTML表单(JSON格式)中的数据分配给变量
- Neo4j结果(JSON格式)创建D3树图
- 高图表数据导入 JSON - 格式
- 更改代码以读取不同的 JSON 格式
- JSON 格式问题
- 将JavaScript字典转换为JSON格式
- 将 XML 数据转换为 json 格式 AngularJS
- KendoDatePicker 无法识别从 Web 服务以 JSON 格式返回的日期
- 在表单提交时设置JSON格式
- AngularJS ng重复json格式
- 如何将json格式的数组数据从jquery返回到html
- 为什么 JSON.parse 无法检测参数是否已采用 JSON 格式
- 如何使用jQuery从表中以JSON格式发布数据
- json格式作为cordova或phonegap ios插件的参数