Ошибка при получении данных XML из GoogleMapsAPI с помощью Jquery - PullRequest
0 голосов
/ 09 февраля 2012

Проверьте этот код

// используя URL: , который выбирает данные xml, найдите ссылку здесь

-

<GeocodeResponse>
<status>OK</status>
−
<result>
<type>locality</type>
<type>political</type>
<formatted_address>Chennai, Tamil Nadu, India</formatted_address>
−
<address_component>
<long_name>Chennai</long_name>
<short_name>Chennai</short_name>
<type>locality</type>
<type>political</type>
</address_component>
−
<address_component>
<long_name>Chennai</long_name>
<short_name>Chennai</short_name>
<type>administrative_area_level_2</type>
<type>political</type>
</address_component>
−
<address_component>
<long_name>Tamil Nadu</long_name>
<short_name>TN</short_name>
<type>administrative_area_level_1</type>
<type>political</type>
</address_component>
−
<address_component>
<long_name>India</long_name>
<short_name>IN</short_name>
<type>country</type>
<type>political</type>
</address_component>
−
<geometry>
−
<location>
<lat>13.0604220</lat>
<lng>80.2495830</lng>
</location>
<location_type>APPROXIMATE</location_type>
−
<viewport>
−
<southwest>
<lat>12.9734519</lat>
<lng>80.1215236</lng>
</southwest>
−
<northeast>
<lat>13.1473615</lat>
<lng>80.3776424</lng>
</northeast>
</viewport>
−
<bounds>
−
<southwest>
<lat>12.9459267</lat>
<lng>80.1487827</lng>
</southwest>
−
<northeast>
<lat>13.2340851</lat>
<lng>80.3322913</lng>
</northeast>
</bounds>
</geometry>
</result>
</GeocodeResponse> 

* В этом следующем коде не удалось получить общее количество узлов на карте Google. Не могли бы вы получить результаты *

$.ajax({
            type: "post",
            url: "http://maps.googleapis.com/maps/api/geocode/xml?address=chennai&sensor=false",
            dataType: "xml",
            success  : function(xmlData){
            var totalNodes = $('*',xmlData).length; // count XML nodes
            alert("This XML file has " + totalNodes);
            },
            error    : function(){
                 alert("Could not retrieve XML file.");
            }

          });

// вывод будет этот XML-файл имеет 20 или более узлов

Ответы [ 2 ]

1 голос
/ 10 февраля 2012

Ваша проблема заключается в следующем: вы пытаетесь «отправить» ajax-запрос к домену, который вам не принадлежит, что невозможно.Вы можете отправлять только запросы JSONP на внешние домены.Единственное решение, которое у вас есть, если вы хотите использовать эту конечную точку, - это создать прокси-страницу на вашем сервере, которая передаст ваш запрос в Google и вернет ответ обратно вашему браузеру.

Существует собственное решение JS, использующее методы, предоставляемые через API Javascript, подробное описание которого приведено здесь: API геокодирования карт Google V3 не возвращает результат в функции JavaScript

0 голосов
/ 09 февраля 2012

Вы не передаете ключи API в Карты Google, что, по-моему, необходимо для API Карт Google.

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