Хоча в назві присутнє абревіатура XML, технологія не накладає обмежень на формат переданих даних. Дані можна пересилати як у вигляді XML, так і в JSON, HTML або просто неструктурованих текстом. Розробник може самостійно створити формат для передачі даних. Однак потрібно враховувати, що при пересиланні використовується текстовий протокол HTTP і тому при використанні методу GET дані повинні передаватися у вигляді тексту (тобто бінарні дані слід кодувати, наприклад в base64). При використанні методу POST в кодуванні немає необхідності.
Історія Правити
Методи класу XMLHttpRequest Правити
Викликається при перериванні користувачем запиту (під час синхронного запиту).
Приклад використання Правити
План роботи з об'єктом XMLHttpRequest можна представити таким чином:
- Створення екземпляра об'єкта XMLHttpRequest
- відкриття з'єднання
- Установка обробника події (потрібно робити після відкриття і до відправки в IE)
- Відправлення запиту.
Створення екземпляра об'єкта XMLHttpRequest. На цій стадії необхідна окрема реалізація для різних браузерів. Система освіти об'єкта відрізняється: в IE 5 - IE 6 вона реалізована через ActiveXObject, а в інших браузерах (IE 7 і вище, Mozilla, Opera, Chrome, Netscape і Safari) - як вбудований об'єкт типу XMLHttpRequest.
Виклик для ранніх версій Internet Explorer виглядає так [3].
В інших браузерах:
Тобто, для забезпечення крос-браузерності коду, потрібно лише перевіряти наявність об'єктів window.XMLHttpRequest і window.ActiveXObject, і, в залежності від того, який є, той і застосовувати.
В якості універсального рішення пропонується використання такої функції:
Установка обробника подій, відкриття з'єднання і відправка запитів
Ці виклики виглядають так:
Після визначення всіх параметрів запиту його залишається тільки відправити. Робиться це шляхом send (). При відправці GET-запиту для версії без ActiveX необхідно вказати параметр null, в інших випадках можна не вказувати ніяких параметрів. Не буде помилкою, якщо для GET завжди буде вказано параметр null:
Після цього починає працювати вищевказаний обробник подій. Він - фактично основна частина програми. У обробнику зазвичай відбувається перехоплення всіх можливих кодів стану запиту і виклик відповідних дій, а також перехоплення можливих помилок. Приклад коду з цими двома функціями: