我正在尝试向我的 Web 应用程序添加功能,允许用户输入地址估计,例如“McDonalds,Detroit,MI”,然后从可能的匹配项列表中选择确切的地址。
我已经熟悉直接地理编码(地址 -> 纬度,lng)和反向地理编码(纬度,lng -> 地址)。有谁知道我如何仅使用谷歌地理编码 API 来完成上述操作?
谢谢!
我正在尝试向我的 Web 应用程序添加功能,允许用户输入地址估计,例如“McDonalds,Detroit,MI”,然后从可能的匹配项列表中选择确切的地址。
我已经熟悉直接地理编码(地址 -> 纬度,lng)和反向地理编码(纬度,lng -> 地址)。有谁知道我如何仅使用谷歌地理编码 API 来完成上述操作?
谢谢!
Galen 是对的,这是针对 V3 的工作代码 - 我在结果的 Placemarks 属性中找到了建议。在下面的示例中尝试 address = "Broad Street"。
if (geocoder) {
geocoder.getLocations(
address,
function (results) {
if (!results) {
alert(address + " no suggestions");
} else {
$('#output').html('');
if (results.Placemark) {
for (var i = 0; i < results.Placemark.length; i++) {
$('#output').append(i + ': ' + results.Placemark[i].address + '<br/>');
}
}
}
});
}
你不能。在大多数情况下,Google 的地理编码器不会匹配营业地点。您想要的是本地搜索 + 地理编码的组合,或地址建议服务,这是 Google 的地理编码服务不提供的。
当您对地址进行地理编码时,谷歌会在响应中返回可能匹配的列表
对 main st 的地理编码请求在纽约返回 2 个结果,在犹他州返回 1 个结果,在缅因州返回 1 个结果,等等......
您只需解析响应以获取不同的位置