- set the URL as /echo/json/ [you need that last slash]
- if you are doing a read action (such as in Model.load) you need to set the proxy.actionMethods.read to "POST"
- set "json" as an extraParam and pass the json string that you want echoed back
- you can optionally set a delay in extraParams
Here is a little function to help you simulate an AJAX request for a proxy:
function sim(proxy, data, delay){ if(typeof data !== 'string'){ data = Ext.JSON.encode(data); } proxy.url = '/echo/json/'; proxy.actionMethods.read = "POST"; proxy.extraParams.json = data; proxy.extraParams.delay= typeof delay == 'undefined' ? 0 : delay; } //usage: sim(MyModel.proxy, {name:"neil"}, 2); MyModel.load(1, { callback: function(record, operation){ console.log( record.get('name'); ) } });
Example:
//jsfiddle.net/el_chief/9ksWE/
/* this is a function to simulate ajax requests in jsfiddle This is the Sencha Touch 2.01 compatible version */ function sim(proxy, data, delay) { if (typeof data !== 'string') { data = Ext.JSON.encode(data); } proxy.setUrl('/echo/json/'); proxy.setExtraParams({ json:data, delay: typeof delay === 'undefined' ? 0 : delay }); proxy.setActionMethods({read:'POST'}); }
No comments:
Post a Comment