Ext.define('saas.util.BaseUtil', { /** * 发起Ajax请求 * @param url: 请求路径 * @param params: 请求参数 */ request: function (config) { var url = config.url, params = config.params, async = config.async || true, method = config.method || 'GET', timeout = config.timeout || 8000, defaultHeaders = { 'Access-Control-Allow-Origin': '*', "Content-Type": 'application/json;charset=UTF-8' }; return new Ext.Promise(function (resolve, reject) { Ext.Ajax.request({ url: url, params: params, async: async, method: method, timeout: timeout, headers: Ext.apply(defaultHeaders, config.headers), success: function (response, opts) { var res = Ext.decode(response.responseText); if(res.success) { return resolve(response); }else { console.error('server request failure with code ' + res.code + '.'); console.error('failure message: ' + res.message); return reject(response); } }, failure: function (response, opts) { console.error('server-side failure with status code ' + response.status); return reject(response); } }); }) } });