这是我在这里发表的第一篇文章,请原谅任何误解。 我使用的是Google地方API(https://maps.googleapis.com/maps/api/js?libraries=places&language=en),而且大部分时间效果都很好。
但是,对于某些地址,它会返回错误的postal_code或邻居。
例如,此搜索查询: " St Giles London - St Giles Hotel,Bedford Avenue,London,United Kingdom "
有些时候,它会返回" WC2E 9HA"的postal_code。 (这是错误的),而其他时候它返回" WC1B" (这很好)。此行为会定期切换。我认为这取决于处理我请求的服务器。
您能帮我找一个解决方案吗?
这是我的示例代码:
var postal = "";
var address = "St Giles London - A St Giles Hotel, Bedford Avenue, London, United Kingdom";
geocoder.geocode({ 'address': address }, function (result, status) {
if (status == google.maps.GeocoderStatus.OK) {
if (result == null) {
alert('null');
} else {
var address_components = result[0].address_components;
for (var i = 0; i < address_components.length; i++) {
if (address_components[i].types[0] == "postal_code") {
postal = address_components[i].long_name;
console.log(postal);
}
}
alert(postal);
return false;
}
} else {
alert('status=' + status);
}
});
谢谢!