геокодирование Google Maps & ASP - PullRequest
1 голос
/ 26 января 2011

Я пытаюсь получить координаты адреса с карты Google с помощью Classic Asp.

Когда я пишу этот адрес в адресной строке, я получаю правильный результат:

http://maps.google.com/maps/geo?output=xml&q=32822%20USA

Но я получаю код 602 (неверное местоположение от Google), когда пытаюсь позвонить по тому же адресу с MSXML2.ServerXMLHttp

коды asp:

url = "http://maps.google.com/maps/geo?output=xml&q=" & Server.URLEncode("32822 USA")
set xmlhttp = CreateObject("MSXML2.ServerXMLHTTP")
xmlhttp.open "GET", url, false
xmlhttp.send ""
xml = xmlhttp.responseText
set xmlhttp = nothing

1 Ответ

1 голос
/ 27 января 2011

Ваша проблема здесь не в правильно сформированном URL-адресе, а в том, что вы не можете выполнять междоменный XMLHttpRequest. Ваш запрос в Службу геокодирования Карт Google должен быть сделан с сервера, который будет извлекать содержимое XML и возвращать его вашему сценарию ASP.

Вот что я хотел бы сделать: ваш сценарий ASP может вызывать файл PHP, который запрашивает геокодирование Google, получает ответ с помощью cURL и возвращает его ASP, который затем может обработать его.


Если вы не хотите использовать это решение, вы также можете взглянуть на API Javascript Google Maps, который также предоставляет методы геокодирования ( ссылка )

...