我使用的是Google提供的用于邮政编码查找的简单URL。
http://maps.googleapis.com/maps/api/geocode/json?address=90210&sensor=true
这个URL将返回全世界的结果,但是我如何将这些结果限制在美国呢?我查了一下,但什么也没找到。我讨厌编写过多的代码来确保没有任何美国地址,而实际上可能有一种方法可以添加到URL中并获得:
{
"results" : [],
"status" : "ZERO_RESULTS"
}如果没有任何结果,这就是API返回的结果。容易多了。
发布于 2014-01-25 03:14:35
您可以使用component filtering并使用country和postal_code组件
http://maps.googleapis.com/maps/api/geocode/json?sensor=true&components=country:US|postal_code:90210
发布于 2013-11-01 23:48:05
也许当你尝试你在问题中提供的链接时,谷歌出现了一个小故障。我刚试过,它工作得很好:
{
"results" : [
{
"address_components" : [
{
"long_name" : "90210",
"short_name" : "90210",
"types" : [ "postal_code" ]
},
{
"long_name" : "Beverly Hills",
"short_name" : "Beverly Hills",
"types" : [ "locality", "political" ]
},
{
"long_name" : "Los Angeles County",
"short_name" : "Los Angeles County",
"types" : [ "administrative_area_level_2", "political" ]
},
{
"long_name" : "California",
"short_name" : "CA",
"types" : [ "administrative_area_level_1", "political" ]
},
{
"long_name" : "United States",
"short_name" : "US",
"types" : [ "country", "political" ]
}
],
"formatted_address" : "Beverly Hills, CA 90210, USA",
"geometry" : {
"bounds" : {
"northeast" : {
"lat" : 34.1354771,
"lng" : -118.3867129
},
"southwest" : {
"lat" : 34.065094,
"lng" : -118.4423781
}
},
"location" : {
"lat" : 34.1030032,
"lng" : -118.4104684
},
"location_type" : "APPROXIMATE",
"viewport" : {
"northeast" : {
"lat" : 34.1354771,
"lng" : -118.3867129
},
"southwest" : {
"lat" : 34.065094,
"lng" : -118.4423781
}
}
},
"types" : [ "postal_code" ]
}
],
"status" : "OK"
}https://stackoverflow.com/questions/19716528
复制相似问题