如何在sencha touch 2中覆盖rest代理的buildUrl方法?

时间:2013-03-19 08:47:49

标签: sencha-touch sencha-touch-2 sencha-touch-2.1

我需要在Sencha Touch 2中覆盖rest代理的buildUrl方法。其余的GET请求将是这样的:

url:'https://api.abc.com/user/{username}/{password}

为实现这一目标,我应该在哪里以及应该做些什么改变?

我应该如何从控制器传递这两个参数? [我想从登录控制器传递用户名和密码]

任何人都可以帮助我吗?感谢

2 个答案:

答案 0 :(得分:2)

这是我为自定义代理覆盖buildUrl的方法,你可以做类似的事情:

Ext.define('MyApp.proxy.MyAjaxProxy', {
extend: 'Ext.data.proxy.Ajax',
alias: 'proxy.myajaxproxy',
buildUrl: function(request) {
    var me      = this,
        url     = me.callParent(arguments);
    if(!Ext.isEmpty(Helper.apiToken)){
        url = Ext.urlAppend(url, "token="+Helper.apiToken);
    }
    return url;
}
});

您可以传递用户名&来自登录控制器的构造函数中的密码如下:

var myProxy = Ext.create('MyApp.proxy.MyAjaxProxy', {
  username : "a@b.com",
  password : "mypassword"
});

然后在buildUrl方法中,您应该可以像this.config.username

那样访问这些内容

答案 1 :(得分:-1)

查看 url 。它涵盖了一切