Comment faire des appels AJAX multi-domaines à l'API Google Maps?

J'essaie de faire un appel jQuery $.getJSON au service $.getJSON Google $.getJSON Google Maps , mais cela ne fonctionne pas en raison de problèmes de sécurité entre domaines.

Je n'ai pas été en mesure de comprendre en ligne, mais j'ai lu un peu sur Google Javascript API ou JSONP, mais jusqu'à présent pas de réponse claire …

  • Accéder à la fenêtre parent de iframe (cross-domain)
  • Vérifiez si la même politique d'origine s'applique
  • IE, XDomainRequest ne fonctionne pas toujours
  • Puis-je communiquer entre deux fichiers html locaux à l'aide de javascript?
  • JQuery AJAX cross domain
  • La demande POST de domaine croisé n'émet pas de cookie Ajax Jquery
  • Quelqu'un pourrait-il me éclairer?

    Merci!

  • Radius / résultats les plus proches - Google Maps API
  • Envoi de références avec des postes interdisciplinaires?
  • Google Maps JS API v3 - Exemple de marqueur multiple simple
  • Requête ajax sous-domaine croisé refusée même lorsque document.domain est correctement configuré
  • Comment puis-je envoyer une demande POST multi-domaine via JavaScript?
  • Fermer toutes les fenêtres d'informations google maps API V3?
  • One Solution collect form web for “Comment faire des appels AJAX multi-domaines à l'API Google Maps?”

    Je ne vois aucun avantage à utiliser le service Web de géocodage côté serveur lorsque Google Maps fournit une API de géocodage côté client complète pour JavaScript.

    Tout d'abord, cela résout automatiquement votre problème d'origine et, en plus, les limites de la demande seraient calculées par adresse IP du client au lieu de l'adresse IP du serveur, ce qui peut faire une énorme différence pour un site populaire.

    Voici un exemple très simple utilisant l'API de géocodage JavaScript v3:

     <script src="http://maps.google.com/maps/api/js?sensor=false"></script> <script type="text/javascript"> var geocoder = new google.maps.Geocoder(); var address = 'London, UK'; if (geocoder) { geocoder.geocode({ 'address': address }, function (results, status) { if (status == google.maps.GeocoderStatus.OK) { console.log(results[0].geometry.location); } else { console.log("Geocoding failed: " + status); } }); } </script> 

    Si, pour une raison ou une autre, vous souhaitez utiliser le service Web côté serveur, vous pouvez configurer un proxy inverse très simple, peut-être en utilisant mod_proxy si vous utilisez Apache. Cela vous permettra d'utiliser des chemins relatifs pour vos requêtes AJAX, tandis que le serveur HTTP agirait comme un proxy dans n'importe quel emplacement "distant".

    La directive de configuration fondamentale pour configurer un proxy inverse dans mod_proxy est ProxyPass. Vous l'utiliserez habituellement comme suit:

     ProxyPass /geocode/ http://maps.google.com/maps/api/geocode/ 

    Dans ce cas, le navigateur peut effectuer une requête aux /geocode/output?parameters mais le serveur le servirait en tant que proxy à http://maps.google.com/maps/api/geocode/output?parameters .

    JavaScript rend le site Web intelligent, beauté et facile à utiliser.