Pracuję nad aplikacją, w której muszę pobrać elewację dla niektórych punktów za pomocą interfejsu API Google Elevation i utknąłem w niesławnym problemie CORS.Jak obejść problem CORS w interfejsie API Google?
var elevationUrl = 'https://maps.googleapis.com/maps/api/elevation/json?locations=39.7391536,-104.9847034&key=AIzaSyAgXFgUVR4Nia7pegX_0hcz0aNevCKAa58';
$.ajax({
url: elevationUrl,
type: 'GET',
// dataType: 'JSONP',
success: function(){
}
});
Na początek próbowałem po prostu zapytać o ustalony punkt. Kiedy to zrobię, otrzymuję alert CORS w konsoli przeglądarki.
Po wypróbowaniu dataType: 'JSONP'
, działa i otrzymuję odpowiedź z interfejsu API, ale moja przeglądarka skarży się, że odpowiedź zawiera błąd w odpowiedzi, który nie jest. Zasadniczo próbuję parsować JSON jako JSONP, dlatego dostaję błąd składniowy w odpowiedzi.
Co to oznacza? Jak przesłać zapytanie do interfejsu API Elevation przez wywołania AJAX?
"Moja przeglądarka skarży się, że odpowiedź zawiera błąd w odpowiedzi" - Na co dokładnie narzeka? Zacytuj komunikat o błędzie, nie opisuj go po prostu w sposób niejasny. – Quentin
[Przeczytaj dokumentację] (https://developers.google.com/maps/documentation/elevation/), która ma masywne okienko u góry skierowane w stronę wersji interfejsu API zaprojektowanej dla JS po stronie klienta. – Quentin
Proszę odnieść się do mojej odpowiedzi dotyczącej tamtejszego problemu CORS: [Jak obejść kwestię CORS?] (Http://stackoverflow.com/questions/20433655/no-access-control-allow-origin-header-is-present- on-the-requested-resource-lub/30014915 # 30014915) –