Vraag Hoe de google map-geocodeservice te bellen met jQuery ajax


Ik probeer de LatLng van google map geocode api te krijgen. mijn code staat hieronder met adreswaarden is "New York, NY"

$.ajax({
    url: 'http://maps.googleapis.com/maps/api/geocode/json',
    data: {
        sensor: false,
        address: address
    },
    success: function (data) {
        alert(data)
    }
});

Maar ik krijg geen enkele waarheidswaarde.

Bedankt voor alle hulp.


12
2018-03-04 08:26


oorsprong


antwoorden:


U moet contact opnemen met de API voor het reglement.

$.getJSON( {
    url  : 'https://maps.googleapis.com/maps/api/geocode/json',
    data : {
        sensor  : false,
        address : address
    },
    success : function( data, textStatus ) {
        console.log( textStatus, data );
    }
} );

Bewerk:

Hoe stom van mij, zou niet in de ochtend op stackoverflow moeten zijn! Het probleem is een verzoek tussen verschillende domeinen. Om veiligheidsredenen is dit niet toegestaan. Zien: Hoe cross-domain AJAX-oproepen naar de Google Maps API te maken?

Gebruik de eigen versie van Google Geocodeer client.


12
2018-03-04 08:33



er is geen noodzaak om gebruik te maken van jQuery, Google maps javascript API v3 heeft zijn eigen functies ingebouwd waardoor de API eenvoudig te gebruiken is.

https://developers.google.com/maps/documentation/javascript/geocoding https://developers.google.com/maps/documentation/geocoding/intro

var geocoder = new google.maps.Geocoder();
geocoder.geocode({ 'address': address }, function(results, status) {
    if (status == google.maps.GeocoderStatus.OK) {
        map.setCenter(results[0].geometry.location);
        var marker = new google.maps.Marker({
            map: map,
            position: results[0].geometry.location
        });
    }
});

9
2017-07-24 12:26



Als iemand hulp zoekt over dit onderwerp, zo heb ik het gedaan. Let op dit is een reverse lookup, maar een forward lookup zou op dezelfde manier moeten werken:

`

    function getLocation() {
var latdegrees=40.2298;
var londegrees=-41.88754;
     var url = "https://maps.googleapis.com/maps/api/geocode/json?latlng=" + latdegrees + "," + londegrees + "YOUR API KEY";
    $.getJSON(url,function (data, textStatus) {
           var streetaddress=data.results[0].formatted_address;
          return streetaddress;
      });
     }`

2
2018-03-22 15:26



V3 geocoderingswebservice biedt geen ondersteuning voor JSONP-aanvragen, maar is nog steeds beschikbaar in V2

Zien: http://blog.futtta.be/2010/04/09/no-more-jsonp-for-google-geocoding-webservice/


1
2017-12-27 03:33



Dit is hoe ik het deed. Geocoder lijkt zijn eigen terugroeping te creƫren.

geo.geocode({ 'address': myaddress }, function(data, status) {
    if (status == google.maps.GeocoderStatus.OK) { 
        var myylocation = data[0].geometry.location;
        lat = myylocation.lat();
        lng = myylocation.lng();
    }
});

1
2018-01-20 01:18



of geef dataType op naar jsonp?

$.ajax({
    url: 'http://maps.googleapis.com/maps/api/geocode/json',
    data: {
        sensor: false,
        address: address
    },
    dataType:'jsonp',
    success: function (data) {
        alert(data)
    }
});

0
2017-11-23 01:38