2017-03-29 8 views
2

Hallo, ich benutze einfache Google Map Orte API, um in der Nähe von atms für Benutzer. Mein Klient lebt in New York und aus irgendeinem seltsamen Grund zeigt Api keine Ergebnisse für diesen Ort, aber funktioniert gut in meiner Nähe (Pakistan). Ich suchte ein wenig und fand heraus, dass es Googles Problem war und einige andere Orte hatten das gleiche Problem. Aber dafür habe ich nie eine Lösung gefunden. Dies ist das iGoogle Orte API zeigt keine Ergebnisse für einige Orte

https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=40.7128,74.1059&radius=10000000&keyword=atm&key=MY_KEY 

verwenden erhalten nenne ich wirklich die Hilfe schätzen würde. Danke :)

Antwort

1

Google Ort in der Nähe Suche maximal 50.000 Meter (31 Meilen). Wenn Sie versuchen, mehr als 50.000 eingeben, funktioniert es nicht ordnungsgemäß.

Es gibt eine andere Möglichkeit, alle Geldautomaten in einer Stadt zu finden. Google bieten Textsuche

https://maps.googleapis.com/maps/api/place/textsearch/json?query=atm+in+Reno,NV,89501,USA&key={API_KEY} 

query = Stichwort Anfragen + in + Stadtname

für Breitengrad Längengrad mit Ortsnamen erhalten

http://maps.googleapis.com/maps/api/geocode/json?latlng=39.52963,-119.81380&sensor=true 

Weitere Informationen wie Name der Stadt zu bekommen unter Verwendung des Längengrads der Breite

https://developers.google.com/maps/documentation/geocoding/start?csw=1#ReverseGeocoding

für weitere Informationen darüber, wie Textsuche verwenden Fordert

https://developers.google.com/places/web-service/search

OR (zweiter Weg)

Es gibt eine andere Art und Weise für alle ATM in einer Stadt zu finden.

  • Öffnen Sie Google Maps.
  • Erstellen Sie 10-12 oder mehr Punkte Breiten-, Längengrad zu Triggern Anfrage.
  • Verwenden Sie dann eine Schleife, um alle Orte innerhalb dieser Punkte zu finden.
  • Wenn Sie mehr passende Ergebnisse wünschen, erhöhen Sie die ersten Triggerpunkte für Ihre Anfragen.

- Es ist nur eine Logik, die ich in PHP erstellt.

$triggerPoints = array("lat1,long1", "lat2,long2", "lat3,long3",....); 

    foreeach(triggerPoints as $tP){ 
     $requestUrl = "https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=$tP&radius=[YOUR_RADIUS_VALUE]&type=[YOUR_TYPE]&name=panera&key=[YOUR_KEY_HERE"; 
     $results = file_get_contents($requestUrl); 
     //Do what you want with response JSON data 

    } 
Verwandte Themen