AJAX. 2 – Подробнее об XMLHttpRequest
В статье AJAX. 1 – Что это такое? я рассказал про то, в каких случаях можно использовать AJAX и привел тестовый пример использования AJAX в веб-разработке. Теперь я хочу немного углубиться в подробности работы с объектом XMLHttpRequest и расскажу про его основные свойства и методы. Итак…
Методы объекта XMLHttpRequest:
- abort() – Прекращает исполнение текущего запроса. При этом объект XMLHttpRequest возвращет readyState=4 и status=0.
- getAllResponseHeaders()– Возвращает HTTP-заголовки ответа в
виде строки. Эта строка может выглядеть, например, так:Date: Fri, 30 Jan 2009 13:57:48 GMT Server: Apache/2.2.4 (Win32) mod_ssl/2.2.4 OpenSSL/0.9.8d PHP/5.2.4 X-Powered-By: PHP/5.2.4 Content-Length: 91 Keep-Alive: timeout=5, max=98 Connection: Keep-Alive Content-Type: text/xml - getResponseHeader(“header-name”) – Возвращает заголовок “header-name” ответа. Для случая getResponseHeader(‘Content-Type’) она вернет
text/xml
- open(“method”, “URL”, async-flag, “user-name”, “password”) – Инициализирует параметры запроса. Если в качестве “method” используется строка “POST”, то метод send(‘content’) в качестве параметра должен принимать данные, передаваемые методом POST. Если же “method”=”GET”, то параметры обработчику передаются в параметре “URL” метода open()
- send(“content”) – Выполняет HTTP-запрос.
- setRequestHeader(“header-name”, “header-value”) – Добавляет в запрос HTTP-заголовок.
Свойства объекта XMLHttpRequest::
- onreadystatechange – Установка функции обратного вызова, которая будет обслуживать изменение состояния запроса.
- readyState – Возвращает состояние запроса
0 – не инициализирован
1 – идет отправка запроса
2 – запрос отправлен
3 – идет обмен
4 – обмен завершен - responseText – Содержит ответ сервера в виде строки
- responseXML – Содержит ответ сервера в виде XML-документа
- status – Возвращает код состояния запроса
- statusText – Возвращает сообщение о состоянии запроса
Здесь расположен архив с исходными кодами тестового примера, который демонстрирует использование всех вышеприведенных свойств и методов.
0комментариев