Получение текста ошибки в обратном вызове ошибки XMLHttpRequest - PullRequest
0 голосов
/ 03 июля 2019

Учитывая этот маленький фрагмент кода:

function getPage () {
        var xhttp = new XMLHttpRequest();
        xhttp.addEventListener("error", getFailed);
        xhttp.open("GET", "http://nonexistentserver.com", true);
        xhttp.send();
        }

function getFailed(msg) {
    // I get an ProgressEvent object which doesn't have any text properties?
        }

Когда он выполняется, обратный вызов getFailed () действительно вызывается, но я не могу найти никакой информации о том, как определить, что это за ошибка. Когда я искал информацию, все, что я мог найти, это ошибки HTML (например, 404) и сообщения об ошибках, вызывающих ошибку. Как получить информацию о том, что сбой был доступен в сообщении об ошибке?

Ответы [ 2 ]

0 голосов
/ 03 июля 2019

Вы можете попробовать использовать событие onprogress и обработать код состояния, например:

var xhr = new XMLHttpRequest;
xhr.onprogress = function () {
  console.log(xhr.status); //404 will be printed on console
};

xhr.open('GET', '/noexists');
xhr.send(); 
0 голосов
/ 03 июля 2019

Похоже, что в вашем случае невозможно получить информацию об ошибке.Есть несколько свойств, которые показывают статус запроса: XMLHttpRequest.status, XMLHttpRequest.statusText и XMLHttpRequest.responseText.Но все они здесь не работают (только XMLHttpRequest.status показывает '0') в этом случае.Событие ошибки XMLHttpRequest вызывается при возникновении только ошибки.Он не отправляет информацию об ошибке.Я надеюсь, что это поможет вам: XMLHttpRequest и XMLHttpRequest Свойства

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