longitude latitude google geocoder from address api google-maps geocoding

api - geocoder - get latitude longitude google maps javascript



Google Geocode Components dos paĆ­ses (1)

¿Cómo es posible filtrar los resultados de la API de Google Geocode y el uso del parámetro de componentes para dos (o más) países, sin emitir otra solicitud ?

Ejemplo:

  • http://maps.googleapis.com/maps/api/geocode/xml?sensor=false&components=country:DE,AT&address=wien
    da cero resultado, ya que no hay Wien en Alemania y el AT después de que se ignora la coma
  • http://maps.googleapis.com/maps/api/geocode/xml?sensor=false&components=country:AT,DE&address=wien
    está bien, porque hay un Wien en Austria
  • http://maps.googleapis.com/maps/api/geocode/xml?sensor=false&components=country:AT|country:DE&address=wien
    da cero resultados, ya que los dos filtros de componentes están superando entre sí

¿Existe algo en la documentación que sobreescribo que lo hace posible, o no puedo hacerlo?

Editar

Probé una solución con la configuración de los límites combinados de Alemania y Austria, pero eso solo pondera los resultados y no los filtra, así que obtuve un resultado que no quería con http://maps.googleapis.com/maps/api/geocode/xml?sensor=false&components=bounds:55.058,17.161|46.372,5.866&address=new%20york . En este caso, quiero un estado ZERO_RESULTS.


Esto no es posible actualmente. Por favor vote el número 4233 si quiere que esto suceda.

Por el momento puedo sugerir tres posibles soluciones, ninguna de ellas perfecta:

  1. Realice varias solicitudes y combine los conjuntos de resultados manualmente. Esto le dará la mejor precisión, pero obviamente es el más lento.
  2. Utilice el truco de límites combinados manualmente en la pregunta de HerrSerker, luego filtre manualmente los resultados donde el short_name del elemento address_components con un types de country no está en su lista de países.
  3. Elimine por completo el filtro de componentes e incluya "Austria OR Alemania" en su cadena de búsqueda. De nuevo, querrá filtrar los resultados manualmente.