HTTP-запрос Javascript XML не может открыть файл RSS с сервера, статус XML = 0 - PullRequest
0 голосов
/ 28 апреля 2011

Я пытаюсь проанализировать RSS-канал с помощью javascript, и недавно я столкнулся с проблемой открытия XML-файла как с локального хоста, так и с веб-сервера (я всегда обращаюсь к своим локальным файлам с помощью ключевого слова http: // все время, когда я работаюна локальном хосте).Я получил статус XML 0 вместо статуса 200 (установлен) во всех браузерах.Проблема возникает только при попытке открыть файл XML, размещенный на сервере.Вот что у меня есть:

if(window.ActiveXObject)//IE
    xml_req = new ActiveXObject("Microsoft.XMLHTTP");
else if(window.XMLHttpRequest)
    xml_req = new XMLHttpRequest();
    else alert('no ajax support');

xml_req = new XMLHttpRequest();
var url = "http://www.something.net/rss.xml";
xml_req.open("GET", url, true);

xml_req.onreadystatechange = function(){
    if(xml_req.readyState == 4){
        if(xml_req.status == 200){
            if(xml_req.responseText != null)
                .....//DO STUFF
            else{
                alert("Error");
                return false;
            }
        }
        else{
                  //THIS IS WHERE THE ERROR OCCURS,STATUS=0 INSTEAD OF 200
               alert("XML Status = " + xml_req.status + xml_req.statusText);}
    }
}

Все работает нормально, когда я открываю локальный файл XML, который не размещен на сервере.Например, приведенный ниже код открывает файл rss на локальном хосте просто отлично:

var url = "rssLocalhost.xml";
xml_req.open("GET", url, true);

Пожалуйста, помогите!Был бы признателен за любые предложения от кого-либо там.Спасибо!

1 Ответ

1 голос
/ 28 апреля 2011

Вы не можете отправлять запросы на другие сайты . Вам необходимо прокси-данные через собственный сервер или использовать источник данных JSON-P.

...