【问题标题】:google-maps geocoding API no resultsgoogle-maps 地理编码 API 没有结果
【发布时间】:2016-11-17 17:43:25
【问题描述】:

请告诉我为什么这个对 Google 地理编码 API 的调用没有返回任何结果。 https://maps.googleapis.com/maps/api/geocode/json?address=1226%20Freeport%20Road+Defuniak%20Springs+FL+32433

【问题讨论】:

  • 因为该地址不在地理编码器的数据库中。为什么你认为它应该在地理编码器的数据库中?
  • 应该是因为它是一个有效的地址。这是我正在从事的一个项目的活动网站之一,尽管在谷歌地图上搜索时它显示得很好,但我无法对其进行地理编码。谢谢!
  • @geocodezip 这也让我问...因为我可以对我的家庭地址进行地理编码...为什么它在地理编码器的数据库中?
  • 在地点数据库中列出该地址的唯一地点(所以我假设在谷歌地图上)是购物中心的商店。您可能需要使用谷歌地图上的“发送反馈:报告数据问题”链接将其放入地理编码数据库。

标签: google-maps maps google-geocoding-api geocode


【解决方案1】:

您可以使用 Places API 请求找到此地址:

https://maps.googleapis.com/maps/api/place/textsearch/json?query=1226%20Freeport%20Road%20Defuniak%20Springs%20FL%2032433&key=YOUR_API_KEY

为什么您无法使用 Geocoding API 找到它?如果您检查 Places API 的响应,您将看到以下内容:

"results":[
{
  "formatted_address":"1226 Freeport Road, Defuniak Springs, FL 32433, United States",
  "geometry":{
    "location":{
      "lat":30.7045583,"lng":-86.1251103
    }
  },
  "icon":"https://maps.gstatic.com/mapfiles/place_api/icons/restaurant-71.png",
  "id":"bcb674fa738a9af907230e17fb25014a498d7987",
  "name":"Subway",
  "opening_hours":{
    "open_now":true,
    "weekday_text":[

    ]
  },
  "place_id":"ChIJn1aPjK3Rk4gRL0ZTnQtbwS0",
  "price_level":1,
  "reference":"CmRRAAAAvNQhXr-Zgrhc2HdI8hECvgzuLZQfTgP1MdA0oH-db5-8SPiXOLIsKYYMYUCTEQreUdP4JwV-EBZJhttf52dUFCOBzAHF7iOrgvtEnDpe_EcoBqg6z_bPo14X9_CW9ZafEhApON7yxIXlHbhjqdz7qe37GhTWK5ifCApitBrSehqI8bIG03Z2IQ",
  "types":[
    "restaurant","food","point_of_interest","establishment"
  ]
},....

请注意,这个地方的类型有“餐厅”、“食物”、...所以它代表一个企业。地理编码 API 会过滤掉所有企业,并且仅适用于街道地址类型的功能。

您可以使用地图制作工具自己创建街道地址:

https://mapmaker.google.com/mapmaker

希望对您有所帮助!

【讨论】:

  • 感谢您的解释和替代解决方案。当然有帮助!
猜你喜欢
  • 2017-10-04
  • 2013-04-05
  • 1970-01-01
  • 2010-11-21
  • 2013-12-18
  • 1970-01-01
  • 1970-01-01
  • 2017-03-13
  • 2017-04-23
相关资源
最近更新 更多