iron-ajax忽略了重复的参数

时间:2016-08-05 13:10:44

标签: javascript ajax polymer polymer-1.0

所以我使用iron-ajax的params向我的api发送查询; ajax的params字段调用此函数params="ajaxParams"。我遇到的问题是,当我多次调用amount: ...时,第二个会在查询中替换它。

 //enters praramaters into the iron-ajax params, this automatically
 // gets added onto the ajax link, and will generate a new request when a change happens.
        _getParams: function(searchQuery, amountMin, amountMax){
          return{
            name: searchQuery,
            amount: '>=' + amountMin,
            amount: '<=' + amountMax
          }
        },

这是xhr请求中编码的查询字符串的样子:

path/to/api/data?name=bob&amount=%3C%3D50000

对此的查询是:

name: 'bob',
amount: '>=' + 5000,
amount: '<=' + 50000

另外我试过了:

 return{
            name: searchQuery,
            amount: '>' + amountMin + '&amount<' + amountMax
          }

但输出只是编码成:

path/to/api/data?name=bob&amount=%3E5000%26amount%3C50000

总结一下,我试图从iron-ajax params获得以下查询,但似乎params参数不会接受重复参数:

path/to/api/data?name=bob&amount=%3E5000&amount=%3E50000

编辑:

Gar指出这似乎是一个js问题,其中2个对象属性被bieng返回,作为一个解决方法,我试图摆脱params并只是将变量添加到api url:

<iron-ajax  auto
                    url="path/to/api/data?name={{searchQuery}}
                    &amount=>={{amountMin}}
                    &amount=<={{amountMax}}"                       
                    handle-as="json" 
                    method="GET"></iron-ajax>

这会打破这个网址,但

path/to/api/data?name=%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20&amount=%3E=5000%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20&amount=%3C=50000

0 个答案:

没有答案