谷歌地理编码AJAX - 通过邮政编码查找无效但返回数据

时间:2017-05-23 20:46:09

标签: jquery ajax google-maps-api-3

我尝试使用网址

查询Google Geocode API
http://maps.google.com/maps/api/geocode/json?address=00000

我希望得到一个结果,并在我的浏览器和第三方工具(如SoapUI)中收到此结果。

{
 "results" : [],
 "status" : "ZERO_RESULTS"
}

然而,当我使用JQuery和Ajax查询地址时......

            var googleAPI = "http://maps.google.com/maps/api/geocode/json?";
            var addressCombined = "address=" + jQuery('#ZipCode').val();

            alert(addressCombined);
            $.getJSON(googleAPI,
                {
                    address: addressCombined
                })
                .done(function(data) {
                    alert(googleAPI + addressCombined);
                    alert(JSON.stringify(data));
                   }
                .fail(function(error) {
                    alert("no");
                    console.log("ERROR");
                    console.log(error);
                });

我在罗德岛找到了一席之地。知道为什么吗? 这是一些截图

URL to Google Result from Google

1 个答案:

答案 0 :(得分:1)

试试这个:

var googleAPI = "http://maps.google.com/maps/api/geocode/json?";
var addressCombined = jQuery('#ZipCode').val();

alert(addressCombined);
$.getJSON(googleAPI,
    {
        address: addressCombined
    })
    .done(function(data) {
        alert(googleAPI + addressCombined);
        alert(JSON.stringify(data));
       }
    .fail(function(error) {
        alert("no");
        console.log("ERROR");
        console.log(error);
    });

无需在变量address中添加addressCombined,因为我们使用param address

在ajax中发送它

问题: google api url 字符串address中有多个http://maps.google.com/maps/api/geocode/json?&address=address=00000应该是http://maps.google.com/maps/api/geocode/json?&address=00000