2017-05-03 2 views
-1

So in der aktuellen Adresse Ich bin über die Google Maps API zu senden:Google Maps verschiedene für Web vs API Rückkehr

Tilden Dorf, 02052

ich es auf Karten finden nur durch die oben eingeben . Wenn ich den folgenden Aufruf verwende, wird ein ungenauer Kartenstandort zurückgegeben. Fehle ich etwas?

function showAddress(address) { 
     if (geocoder) { 
     $('#mapblock').css('border','2px #CCC solid'); 
     geocoder.getLatLng(
      address, 
      function(point) { 
      if (!point) { 
          map.addControl(new GSmallZoomControl3D()); 

       alert(address + " not found"); 
      } else { 
       map.addControl(new GSmallZoomControl3D()); 
       map.setCenter(point, 13); 
       var marker = new GMarker(point); 
       map.addOverlay(marker); 
       //marker.openInfoWindow("test",{maxWidth:249}); 
      } 
      } 
     ); 
     } 
    } 

Hier ist das Ergebnis durch Google Maps: Google Maps REsult.

API response/Geocode and Map result

Hier ist das Ergebnis aus der API/Geocoding:

+0

sind Sie sicher, dass Sie den richtigen Ort, von Google maps bekommen? Welches Ergebnis erwartest du? Bitte geben Sie eine [mcve] an, die das Problem (und Ihr erwartetes Ergebnis) demonstriert. Vielleicht möchten Sie sich Folgendes ansehen: https://developers.google.com/maps/documentation/geocoding/best-practices – geocodezip

+0

Ok, ich werde etwas zum obigen Beitrag hinzufügen. – BostonMacOSX

Antwort

0

Es gibt zwei Dinge in Bezug auf Geocoding API-Anforderung markieren in deinem Beispiel.

  • Das 'Tilden Village, 02052' ist unvollständig und mehrdeutig. Der Geokodierungsdienst funktioniert bei mehrdeutigen Abfragen nicht wirklich gut. Ich kann mehrere Ergebnisse für 'Tilden Dorf, 02052' sehen, wie in meinem Screenshot
gezeigt

enter image description here

Sie eine genauere Suchbegriff liefern sollten, wie in diesem Dokument erwähnt werden:

https://developers.google.com/maps/faq#geocoder_queryformat

Sehen Sie sich auch die Best Practices an, in denen Sie Ansätze zur Lösung mehrdeutiger Abfragen finden können.

https://developers.google.com/maps/documentation/geocoding/best-practices

  • Die Medfield Housing Authority, dass Sie als das richtige Ergebnis beziehen eine Adresse '30 Pound St, Medfield, MA 02052, USA hat‘, so würde ich '30 Pound St, 02052' erwarten genauer:

https://google-developers.appspot.com/maps/documentation/utils/geocoder/#q%3D30%2520Pound%2520St%252C%2520%252002052