XHR 0x80004005 (NS_ERROR_FAILURE) с очень простым HTTP-запросом - PullRequest
0 голосов
/ 12 марта 2012

У меня есть очень простой кусок кода, чтобы попытаться получить XML с помощью объекта JavaScript xmlHttpRequest.Это то, что он делает правильно ....?

Если я вырезал и вставил этот URL в Firefox ...

http://oracleofbacon.org/cgi-bin/xml?a=Kevin%20Bacon&b=Arnold%20Schwarzenegger&u=1&p=google-apps

... Я получил действительныйответ.

Если я использую следующий код ...

function bacon() {
    xmlhttp=new XMLHttpRequest();
    try{
    xmlhttp.open("GET","http://oracleofbacon.org/cgi-bin/xml?a=Kevin%20Bacon&b=Arnold%20Schwarzenegger&u=1&p=google-apps",false);
        xmlhttp.send(null);
    }
    catch(err){
        alert(err.message);
    }
}

... Я получаю ошибку.Может кто-нибудь сказать мне, почему?

Если я сохраню XML, возвращенный из URL-адреса, полученного в Firefox, в локальный файл и использую ссылку на этот файл в URL-адресе, XML-файл будет успешно загружен.Не могу понять, почему это не удается.Также возвращает ошибку в Chrome.

С уважением,

Пол.

1 Ответ

3 голосов
/ 12 марта 2012

Похоже, вы используете ту же политику происхождения JavaScript.

Вы можете извлекать данные только из того же домена, на котором находится ваша страница.Если вы хотите получить данные с удаленного сервера, вы должны использовать такие методы, как JSONP.

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