2013-04-29 2 views
1

J'essaie d'utiliser le géocodeur de Google pour trouver un pays par son code ISO. C'est simple et fiable si je passe le paramètre de composants (c'est-à-dire composants = pays: US). Cependant, j'ai lu les docs et il semble que l'API Maps Javascript v3 ne supporte pas ce paramètre. Puisque le géocodeur de Google ne supporte plus JSONP, je ne peux pas utiliser ajax.Comment puis-je géocoder en utilisant le paramètre components avec l'API Javascript de Google Maps v3?

Existe-t-il un moyen de spécifier des composants dans l'API JS ou existe-t-il une solution de contournement à laquelle je ne pense pas?

Toute aide est très appréciée.

+0

Vous pouvez juste jeter un oeil sur ce post: [http://stackoverflow.com/questions/19989653/how-to-prevent-google- geocoder-from-return-results-from-other-countrys] [1], ça marche pour moi :). [1]: http://stackoverflow.com/questions/19989653/how-to-prevent-google-geocoder-from-returning-results-from-other-countrys – Jun

Répondre

0

Il fonctionne pour moi quand j'utilise le code ISO-en address -property et plus que region -property pour la demande.

+0

Il peut travailler à utiliser la ISO dans la région et l'adresse parfois mais pas toujours. Parfois, le pays avec cette ISO n'est même pas retourné par le géocodeur. Par exemple, AL est l'ISO pour l'Albanie mais http://maps.googleapis.com/maps/api/geocode/json?region=AL&address=AL&sensor=false renvoie seulement Alabama – user1839322

+0

La région n'utilise pas ISO 3166-1, elle utilise "pays code de domaine de premier niveau (ccTLD) ", qui est une liste similaire mais pas exactement la même. En outre, ce lien Albanie retourne maintenant Albanie, alors peut-être que c'était juste un bug à l'époque. Les codes de pays utilisés pour les composants sont cependant ISO 3166-1. – rooby

0

Je suis parti à contre-cœur et j'ai codé en dur une correspondance de l'ISO vers le nom du pays. Ça me rend un peu malade mais il faut faire ce que tu dois faire ...