google-maps - 为什么 Google 地图 API 结果不准确?
问题描述
我们使用高级计划进行谷歌地图 api查找,并在使用它时遇到准确性问题我进行以下操作。但这些只是例子,可能有很多
52241(应该是Coralville,拉爱荷华市)
43065(应该是鲍威尔,拉肖尼山)
11040(应该是新海德公园,拉花园城)。
我们使用以下 URL: https://maps.googleapis.com/maps/api/geocode/json?components=country:US|postal_code:
解决方案
您在问题中提到的邮政编码与多个地区重叠。谷歌在地址组件中显示一个地方,可能是他们认为最突出的地方。
但是,在响应中,您可以看到邮政编码重叠的地区列表。只需查看postcode_localities
响应中的字段。
例如,对于邮政编码 52241
https://maps.googleapis.com/maps/api/geocode/json?components=postal_code%3A52241%7Ccountry%3AUS&key=YOUR_API_KEY
你会看见
"place_id":"ChIJbaAjdYZD5IcRBfptU5KhMJk",
"postcode_localities":[
"Coralville","Iowa City","Oakdale"
],
"types":[
"postal_code"
]
对于邮政编码 43065
https://maps.googleapis.com/maps/api/geocode/json?components=postal_code%3A43065%7Ccountry%3AUS&key=YOUR_API_KEY
响应将包含
"place_id":"ChIJW2TudRTsOIgR8v0-4d19bNA",
"postcode_localities":[
"Powell","Shawnee Hills"
],
"types":[
"postal_code"
]
最后是邮政编码 11040
https://maps.googleapis.com/maps/api/geocode/json?components=postal_code%3A11040%7Ccountry%3AUS&key=YOUR_API_KEY
你会得到
"place_id":"ChIJ28UCx5hiwokRf_9UXmJHg5I",
"postcode_localities":[
"GARDEN CITY P","Garden City Park","Hillside Manor","Manhasset Hills","New Hyde Park","North Hills","North New Hyde Park"
],
"types":[
"postal_code"
]
请注意,您要查找的位置存在于postcode_localities
数组中。
我希望这有帮助!
推荐阅读
- npm - 使用一个“package.json”与其他目录一起安装 npm
- selenium - 元素不可点击。其他元素会收到点击
- java - 在 java 中,如何在 if lambda 条件中声明变量?
- android - 检测到不支持的模块:不幸的是,您不能在一个项目中拥有非 Gradle Java 模块和 Android-Gradle 模块
- spring - 如何在春季 5 中为所有 cookie 设置 SameSite:Strict
- html - HTML可折叠文本而不是图像?
- c - 通过中断保护读取值
- php - 找到 ABC 和 ACA 的字母序列值
- gnuplot - 绘制具有不同列/线宽的热图
- c++ - 如何忽略用户输入的第二个字母