JavaScript. Подробное руководство, 6-е издание (Флэнаган) - страница 954

Возможности объекта >XMLHttpRequest, описанные выше, прекрасно поддерживаются всеми современными броузерами. На момент написания этих строк велись работы над стандартом «XMLHttpRequest Level 2», и производители броузеров уже приступили к его реализации. Свойства, методы и обработчики событий, перечисленные ниже, включают особенности, введенные спецификацией «XMLHttpRequest Level 2», которые могут быть реализованы не во всех броузерах. Эти новые особенности помечены строкой «XHR2».


Конструктор

>new XMLHttpRequest()

Этот конструктор, не имеющий аргументов, возвращает новый объект >XMLHttpRequest.


Константы

>unsigned short UNSENT = 0

Начальное состояние. Объект >XMLHttpRequest только что создан или сброшен в исходное состояние вызовом метода >abort().

>unsigned short OPENED = 1

Метод >open() уже вызван, но обращения к методу >send() еще не было. Запрос еще не отправлен.

>unsigned short HEADERS.RECEIVED = 2

Вызван метод >send() и приняты заголовки ответа, но тело ответа еще не принято.

>unsigned short LOADING = З

Начат прием тела ответа, но прием еще не завершился.

>unsigned short DONE = 4

HTTP-ответ принят полностью или прием был остановлен из-за ошибки.


Свойства

>readonly unsigned short readyState

Состояние HTTP-запроса. В момент создания объекта >XMLHttpRequest это свойство приобретает значение 0, а к моменту получения полного HTTP-ответа это значение возрастает до 4. Возможные значения свойства определяют константы, перечисленные выше.

Значение свойства >readyState может уменьшаться, только если в процессе выполнения запроса был вызван метод >abort() или >ореп().

Теоретически при каждом изменении значения этого свойства должен вызываться обработчик события >onreadystatechange. Однако на практике событие гарантированно возникает, только когда свойство >readyState получает значение 4. (События «progress», введенные спецификацией XHR2, обеспечивают более надежный способ слежения за ходом выполнения запроса.)

>readonly any response

В спецификации XHR2 это свойство хранит ответ сервера. Тип свойства зависит от значения свойства >responseType. Если >responseType содержит пустую строку или строку «text», данное свойство содержит тело ответа в виде строки. Если >responseType содержит строку «document», значением данного свойства будет объект >Document, полученный в результате разбора XML- или HTML-документа в теле ответа. Если >responseType содержит строку «arraybuffer», значением данного свойства будет объект >ArrayBuffer, представляющий двоичные данные в теле ответа. А если >responseType содержит строку «ЫоЬ», значением данного свойства будет объект