【问题标题】:How to get geocode of particular address of Spain using google API?如何使用谷歌 API 获取西班牙特定地址的地理编码?
【发布时间】:2019-05-26 00:37:12
【问题描述】:

我正在尝试获取特定地址的地理编码,但当我尝试使用西班牙地址时出现此特定错误,它显示 Invalid request. One of the input parameters contains a non-UTF-8 string. 但在美国或印度等其他国家/地区工作正常。

我尝试使用其他西班牙地址,但它继续显示相同的错误我使用此 url 获取地理编码

https://maps.googleapis.com/maps/api/geocode/xml?address=hereputspainaddress&key=myapikey

也可以尝试通过区域和语言代码

https://maps.googleapis.com/maps/api/geocode/xml?address=hereputspainaddress&key=myapikey&language=es-co&region=ES

我需要有关如何根据添加的用户获取所有区域的地址并获取该特定地址的地理编码的帮助。

【问题讨论】:

  • 您要进行地理编码的“非 utf-8 字符串”是什么?您是否尝试过发送 utf-8 编码?
  • 我已经通过了 utf-8 并且还向您发送了西班牙地址之一“Calle Aduana, 29, 28070 MADRID, España”你能看看这个吗?

标签: google-maps google-maps-api-3 google-api


【解决方案1】:

您应该先URL-encode 在请求中发送地址字符串。

我认为问题可能与您的地址中的 ñ 符号有关。如果您对其进行 URL 编码,它将被替换为 %C3%B1

如果我对地址进行 URL 编码,我可以获得响应

https://maps.googleapis.com/maps/api/geocode/json?address=Calle%20Aduana%2C%2029%2C%2028070%20MADRID%2C%20Espa%C3%B1a&key=MY_API_KEY

我在回复中收到地址为“Calle de la Aduana, 29, 28013 Madrid, Spain”的地点 ID ChIJba0n1oYoQg0R5u5-y9jZ9sU

您也可以在 Geocoder 工具中看到这个结果:

https://google-developers.appspot.com/maps/documentation/utils/geocoder/#q%3DCalle%2520Aduana%252C%252029%252C%252028070%2520MADRID%252C%2520Espa%25F1a

我希望这会有所帮助!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-03-13
    • 1970-01-01
    • 2013-05-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-28
    • 1970-01-01
    相关资源
    最近更新 更多