--- title: XMLHttpRequest.response slug: Web/API/XMLHttpRequest/response tags: - AJAX - Response - XMLHttpRequest translation_of: Web/API/XMLHttpRequest/response ---
XMLHttpRequest
response
возвращает содержимое тела ответа в виде ArrayBuffer
, Blob
, Document
, JavaScript Object
или DOMString
в зависимости от значения свойства responseType
.var body = XMLHttpRequest.response;
Соответствующий объект, основанный на значении responseType
. Вы можете попытаться запросить данные в определённом формате, установив значение responseType
после вызова open()
для инициализации запроса, но перед вызовом send()
для отправки запроса на сервер.
Значение равно null
, если запрос ещё не завершён или был неудачным, за исключением того, что при чтении текстовых данных с использованием responseType "text"
или пустой строки (""
), ответ может содержать ответ до тех пор, пока запрос все ещё находится в состоянии LOADING readyState (3)
.
Типы ответов описаны ниже.
Значение | Описание |
---|---|
"" |
Пустая строка responseType обрабатывается так же, как "text" , тип по умолчанию (следовательно, как DOMString .) |
"arraybuffer" |
response в JavaScript ArrayBuffer содержит двоичные данные. |
"blob" |
response в Blob object содержит двоичные данные. |
"document" |
|
"json" |
response является JavaScript object, созданный путём анализа содержимого полученных данных как JSON. |
"text" |
response является текстом в DOMString object. |
"moz-chunked-arraybuffer" |
Похож на Доступ к
|
"ms-stream" |
response является частью потоковой загрузки; этот тип ответа разрешён только для запросов на загрузку и поддерживается только Internet Explorer. |
В этом примере представлена функция load()
, которая загружает и обрабатывает страницу с сервера. Он работает путём создания объекта XMLHttpRequest
и создания обработчика события с событием readystatechange
, чтобы при изменении readyState
на DONE (4)
response
получался и передавался в колбэк-функцию, предоставляемую load()
.
Содержимое обрабатывается как необработанные текстовые данные (поскольку здесь ничто не переопределяет responseType
по умолчанию).
var url = 'somePage.html'; //A local page function load(url, callback) { var xhr = new XMLHttpRequest(); xhr.onreadystatechange = function() { if (xhr.readyState === 4) { callback(xhr.response); } } xhr.open('GET', url, true); xhr.send(''); }
Specification | Status | Comment |
---|---|---|
{{SpecName('XMLHttpRequest', '#the-response-attribute')}} | {{Spec2('XMLHttpRequest')}} | WHATWG живой стандарт |
{{Compat("api.XMLHttpRequest.response")}}