Клуб API Карт

Internal Server Error при загрузке YMapsML с локального сервера

Пост в архиве.

Код JS такой.

 

var _yMap,
URL = "http://localhost/a.xml";

ymaps.ready(function(){
_yMap = new ymaps.Map("yrabmap", {
    center: [55.76, 37.64],
    zoom: 7,
    behaviors: ['default', 'scrollZoom']
});

//После того, как данные YmapsMl-файла загрузятся, вызывается callback-функция
ymaps.geoXml.load(URL)
    .then(function (res) {
        console.log(res);
        _yMap.geoObjects.add(res.geoObjects);
    },function(error){
        console.log(error);
        alert("Ошибка загрузки объектов карты: "+error.message); //internal server error
    });
});

 

 

В файле a.xml находится следующее:

<?xml version="1.0" encoding="UTF-8"?>
    <ymaps:GeoObjectCollection>
        <gml:name>Мастер и Маргарита на Яндекс.Картах</gml:name>
        <gml:featureMembers>
            <ymaps:GeoObject>
                <gml:name>Патриаршие пруды</gml:name>
                <gml:description>Однажды весною, в час небывало жаркого заката, в Москве, на Патриарших прудах, появились два гражданина.</gml:description>
                <gml:Point>
                    <gml:pos>55.763969 37.592111 </gml:pos>
                </gml:Point>
            </ymaps:GeoObject>
        </gml:featureMembers>
    </ymaps:GeoObjectCollection>
</ymaps:ymaps>

Происходит ошибка internal server error.

 

Если я в переменную URL запишу "http://api.yandex.ru/maps/ymapsml/examples/xml/intro.xml" то ошибки не будет, и на карте появятся геообъекты.

 

Как мне загрузить xml с геоданными с локального хоста ?

В документации не нашел решения проблемы.

 

3 комментария
Sergey Konstantinov
28 января 2016, 02:28
Загрузка XML-данных из источника с указанным URL производится сервером Яндекса. Поэтому XML-данные следует размещать на ресурсе, к которому предоставлен публичный доступ (или позаботиться о том, чтобы серверный загрузчик Яндекса смог получить доступ к нему).

http://api.yandex.ru/maps/doc/jsapi/2.x/dg/concepts/geoxml.xml

Есть возможность задавать не адрес по которому находится XML, а непосредственно саму XML ?

такой возможности нет