JavaScript свойство XMLHttpRequest.responseXML

Определение и применение

JavaScript свойство responseXML объекта XMLHttpRequest возвращает документ (Document), содержащий HTML или XML, полученный запросом, или значение null, если запрос был неудачным, еще не был отправлен, или если данные не могут быть проанализированы как XML или HTML. Свойство доступно только для чтения.

Если сервер не определяет заголовок Content-Type как "text/xml" или "application/xml", то вы в любом случае можете использовать метод overrideMimeType(), чтобы переопределить MIME тип, и принудительно анализировать ответ, возвращаемый сервером в формате XML.

Поддержка браузерами

Спецификация: xhr.spec.whatwg

Поддерживается во всех основных браузерах с 2015 года.

Показать браузеры
Совместимостьapi.XMLHttpRequest.responseXML
ВозможностьКомпьютерыМобильные
ChromeEdgeFirefoxOperaSafariChrome AndroidFirefox for AndroidOpera AndroidSafari on iOSSamsung BrowserWebView AndroidWebView on iOS
responseXML✓1✓12✓1

1

Примечание MDN (англ.)

Before Firefox 51, an error parsing the received data added a <parsererror> node to the top of the Document and then returned the Document in whatever state it happens to be in. This was inconsistent with the specification. Starting with Firefox 51, this scenario now correctly returns null as per the spec.

✓≤12.1✓3✓18✓4

4

Примечание MDN (англ.)

Before Firefox for Android 51, an error parsing the received data added a <parsererror> node to the top of the Document and then returned the Document in whatever state it happens to be in. This was inconsistent with the specification. Starting with Firefox for Android 51, this scenario now correctly returns null as per the spec.

✓≤12.1✓1✓1.0✓4.4✓1

поддерживается с ограничениями нет поддержки нет данных≤31 — не позднее версии 31

JavaScript синтаксис:

JavaScript
let myData = XMLHttpRequest.responseXML;

Cпецификация

XMLHttpRequest

Исключения

Тип исключенияОписание
InvalidStateErrorВозникает в том случае, если значение свойства responseType (определяет тип данных, содержащиxся в ответе) отличается от "document", или пустой строки.

Пример использования

JavaScript
let xhr = new XMLHttpRequest(); // инициализируем только что созданный запрос
xhr.open("GET", "https://test.com/info"); // определяем параметры для запроса 

xhr.responseType = "document"; // если указано, тип данных должен быть пустой строкой или "document"
xhr.overrideMimeType("text/xml"); // переопределяем MIME тип и принудительно анализируем ответ, возвращаемый сервером в формате XML

xhr.onload = function() { // добавляем обработчик события
  console.log(xhr.responseXML); // выводим в консоль содержимое свойства
}; 

xhr.send(); // отправляем запрос на сервер