Ich sehe keinen Vorteil in der Verwendung der Server-side Geocoding Web Service, wenn Google Maps bietet eine voll ausgestattete Client-side Geocoding API für JavaScript.
Zunächst löst dies automatisch Ihr Problem mit demselben Ursprung, und zusätzlich werden die Anforderungslimits pro Client-IP-Adresse anstatt pro Server-IP-Adresse berechnet, was für eine beliebte Site einen großen Unterschied machen kann.
Hier ist ein sehr einfaches Beispiel das JavaScript Geocoding API 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>
Wenn aus irgendeinem Grund immer noch Sie die serverseitige Web-Service nutzen möchten, können Sie eine sehr einfache reverse proxy einrichten, vielleicht Verwenden Sie mod_proxy, wenn Sie Apache verwenden. Auf diese Weise können Sie relative Pfade für Ihre AJAX-Anforderungen verwenden, während der HTTP-Server als Proxy für jeden "Remote" -Ordner fungiert.
Die grundlegende Konfigurationsanweisung zum Einrichten eines Reverse-Proxy in mod_proxy ist der ProxyPass. Sie würden es in der Regel wie folgt verwenden:
ProxyPass /geocode/ http://maps.google.com/maps/api/geocode/
In diesem Fall wird der Browser eine Anfrage an /geocode/output?parameters
machen könnte, aber der Server würde dies dienen, indem sie als Proxy http://maps.google.com/maps/api/geocode/output?parameters
handeln.
Danke, mir war die Existenz einer solchen Klasse nicht bekannt. Es löst mein Problem :) –
@Daniel Vassallo, haben Sie Unterschiede bei der Verwendung der API im Vergleich zu http://maps.google.com/maps/place festgestellt? Ich erhalte bessere Ergebnisse bei der Verwendung dieser URL. Haben Sie weitere Informationen zu diesem Teil? Zum Beispiel kann Google dies finden: http://bit.ly/9wxOL2 Aber ich habe versucht, den gleichen Ort mit der API für ein paar Tage jetzt ohne Erfolg zu finden. – wenbert
@wenbert: Ja, ich habe das bei einigen Gelegenheiten bemerkt. Ich habe sogar festgestellt, dass einige Kartenbilder (sowohl Satelliten- als auch Straßenkarten) sich geringfügig von maps.google.com und der Google Maps-API unterscheiden. Zum Beispiel habe ich eine Gelegenheit gefunden, bei der die Grenze einer ganzen Insel um 100 m nach Norden versetzt wird, wenn man die Bilder von maps.google.com und der Google Maps API vergleicht. –