Как получить KML из внешнего URL-адреса с помощью geoXML3? - PullRequest
1 голос
/ 25 мая 2011

Возможно ли как-то получить KML из источника из того же домена. Я имею в виду, чтобы избежать " Одинаковой политики происхождения для Javascript " как-нибудь? (кэширование на нашем сервере не так, поскольку приложение предназначено для работы с внешними источниками)

Приведенный ниже код - это то, что мы пытаемся выполнить (оно выдает ошибку в случае внешнего источника kml).

<script type="text/javascript">
    var myParser = new geoXML3.parser({afterParse: useTheData});
    myParser.parse('http://api.flickr.com/services/feeds/geo/?g=94823070@N00&lang=en-us&format=kml');

    function useTheData(doc) {
        // out callback
    };
</script>

В чем причина спрашивать, существует ли такая политика? Поскольку google.maps.KmlLayer делает этот вид job . Не знаю как или я что-то пропустил. Очень нужно с geoxml3 и понять, что под занавесом!

1 Ответ

3 голосов
/ 26 мая 2011

Если вы получаете доступ к общедоступному KML, вы можете просто загрузить его как стандартное наложение Google

var ctaLayer = new google.maps.KmlLayer('http://gmaps-samples.googlecode.com/svn/trunk/ggeoxml/cta.kml');
ctaLayer.setMap(map);

В противном случае, если вам действительно нужно использовать geoxml, вам потребуется прокси-файл kml (используйте скрипт на стороне сервера, который загрузит файл для вас).

...