Разобрать Google Place JSON с помощью JavaScript - PullRequest
4 голосов
/ 27 мая 2011

по какой-либо причине этот код не работает

var request = "https://maps.googleapis.com/maps/api/place/search/json?";
request = request + "location="+lat+","+lng+"&";
request = request + "radius=500&";
request = request + "types=&";
request = request + "name=&";
request = request + "sensor=false&";
request = request + "key="+key;

$.getJSON(request, function(data){ alert(data); });

Строка действительна, и я получаю результат, если просто загрузить ее в свой браузер. Вы видите что-то не так здесь?

РЕДАКТИРОВАТЬ: хорошо, проблема решена. Google Places API фактически не принимает вызовы ajax jsonp. Вместо этого мне придется использовать их API JavaScript. Смотрите эту тему для более подробной информации:

Как использовать Google Places для получения массива названий мест?


Спасибо за ваши ответы. Итак, теперь я выполняю вызов API со следующим кодом:

    $.ajax({
    url: "https://maps.googleapis.com/maps/api/place/search/json",
    dataType: 'jsonp',
    data: {
        location:lat+","+lng,
        radius:500,
        types:"",
        name:"",
        sensor:"false",
        key:key
    },
    success: function(data) {
        alert(data);
    }
});

, который не показывает ни одного окна предупреждения. Проверяя код, я ловлю сообщение об ошибке:

   "html_attributions" : [],
  json:2Uncaught SyntaxError: Unexpected Token :

"результаты": [ {

Однако после этого сообщения об ошибке в консоли запрошенные данные фактически отображаются в поле «результаты» ... Есть идеи?

1 Ответ

1 голос
/ 03 июня 2011

API Google Адресов не поддерживает запросы JSONP.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...