2015-09-12 3 views
1

Я делаю запрос на получение API google go, используя jQuery, и получаю успешный ответ, но данные не отображаются на моей странице. Это код, который я использую для отправки запроса, и я включил 2 снимка того, что показывают инструменты dev.Ошибка в запросе API Google Адресов

$('#button').click(function() { 
    $.ajax({ 
     type: 'GET', 
     dataType: 'jsonp', 
     url: "https://maps.googleapis.com/maps/api/place/details/json?placeid=ChIJh4vtq-kQsYkRET-Imf6RsuA&key=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", 
     success: function (data) { 
      $("#over_map").text(data.formatted_address); 
     } 
    }); 
}); 

Dev инструменты скриншоты:

enter image description here

enter image description here

+0

Пробовал ли вы 'dataType: 'json''? – Lauromine

ответ

0

Из Google Places place details API page, это выглядит как сервер не поддерживает JSONP. Кроме того, на странице API есть это:

Веб-сервис API Google Places предназначен для использования в серверных приложениях. Если вы создаете клиентское приложение, взгляните на Google Places API for Android и Places Library in the Google Maps JavaScript API.

Это заставляет меня думать, что заголовки CORS, вероятно, не будут установлены, поскольку Google ожидает, что вы будете использовать этот API на стороне сервера, а не на стороне клиента.

Моя рекомендация состоит в том, чтобы попытаться изменить dataType: 'jsonp', на dataType: 'json', в вашем запросе AJAX, и если это заставляет браузер выкидывать исходную ошибку, тогда вам нужно будет выработать решение на стороне сервера вместо текущей клиентской стороны один.

+0

Я также получаю ошибку происхождения при попытке использовать AJAX/JSON. Как выглядит серверное решение? – user2586455

+0

@ user2586455 Любой серверный язык должен иметь возможность нормально выполнять запрос без каких-либо проблем. –

Смежные вопросы