当提供带空格的查询字符串时,json api没有响应[carqueryapi]

时间:2014-03-17 22:03:27

标签: jquery json api

我实际上正在使用carqueryapi获取车辆数据一切正常,除非传递带有space的查询字符串。所以我的意思是当你传递查询时:

www.carqueryapi.com/api/0.3/?callback=?&cmd=getTrims&make=subaru&year=2010

它工作得很完美但是当你试图传递make或模型之间的空间时它不起作用

www.carqueryapi.com/api/0.3/?callback=?&cmd=getTrims&make=aston martin&year=2010

我尝试过的事情:

  1. 使用%20& %2b表示字符串中的空格但没有工作
  2. 我甚至尝试编码那些无法正常工作的网址
  3. 使用数据参数用于例如数据:[make:make,model:model]

    $('#SELECT2&#39)。改变(函数(){

    if(!$('#select2 option:selected')。(':first-child')) {            cleardisable(1);

        year = $('#select option:selected').text();
        make = $('#select2 option:selected').text();
    
        $.ajax({
           type: "POST",
           url:"http://www.carqueryapi.com/api/0.3/?callback=?&cmd=getTrims&make="+make+"&year="+year,
           dataType: "json",
    
         beforeSend: function() {
                $('#aloading').show();
            },
           success: function(data) {
    
              $('#select3').empty();
              $('#select3').append('<option>Select Model...</option>');
              $(data.Models).each(function(index,value){
                $('#select3').append('<option value=\"'+value.model_name+'\">'+value.model_name+'</option>');
             });
    
              $('#select3').removeAttr('disabled');
              $('#aloading').hide();
           }
        });
    

    }  其他  {         cleardisable(1);  } });

  4. 请提前在这里找到你的帮助。

1 个答案:

答案 0 :(得分:0)

查询参数make需要-代替空格:

http://www.carqueryapi.com/api/0.3/?callback=?&cmd=getTrims&make=aston-martin&year=2010

make参数不应用作任意搜索字符串。

它实际上是一个 id :您在JSON响应中找到它作为键"make-id"的值