XMLHttpRequest не определен в Cloud9 IDE? - PullRequest
1 голос
/ 09 марта 2012

Я определил XMLHttpRequest в Cloud9 IDE следующим образом:

var xhr = new XMLHttpRequest();

Но он вызвал ошибку, сказав ReferenceError: XMLHttpRequest is not defined.

Определено ли XMLHttpRequest в Cloud9 IDE?

Спасибо!

Ответы [ 2 ]

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

Если вы запускаете свой файл javascript с помощью кнопки «Отладка», он будет выполнен в node.js , который не содержит XMLHttpRequest (потому что это функция браузера).

Если файл, который вы разрабатываете, является файлом на стороне клиента, лучше откройте HTML-страницу, которая ссылается на файл js, с помощью кнопки «Предварительный просмотр».

В противном случае вы можете использовать node-XMLHttpRequest , который имитирует поведение браузера, или request , который является стандартом де-фактора выполнения запросов к другим службам для nodejs.

0 голосов
/ 29 октября 2013

Я знаю, что это было задано некоторое время назад, но в случае, если кто-то столкнется с той же проблемой, вот как это исправить.

Вам нужно сначала определить XMLHttpRequest в функции, прежде чем пытаться создать объект с ней.

Вот пример:

//Define your method reference 
function createXMLHttpRequest() 
   {
    try 
    { 
      return new XMLHttpRequest();
       } catch(e) {}
    try 
    { 
   return new ActiveXObject("Msxml2.XMLHTTP"); 
   } catch (e) {}
    alert("Sorry, the XMLHttpRequest is not supported");
    return null;
    }

// Теперь вы можете начать создание объекта с заданным createXMLHttpRequest ()

var xhr = new XMLHttpRequest();

function oHttp_readyStateChange() 
{
if (oHttp.readyState == 4) 
{
if (oHttp.status == 200) 
{
  alert(oHttp.responseText); 
}
else {
  alert("The server returned a status code of " + oHttp.status);
}
}
}
oHttp.open("GET", "http://myWebsite/Myfile.sql", true);

oHttp.onreadystatechange = oHttp_readyStateChange;

oHttp.send(null);
...