Лекция: JavaScript и AJAX
Технология AJAX (Asynchronous JavaScript And XML) позволяет создавать интерактивные веб-приложения: пересылаемая сервером клиенту страница может полностью не перегружаться, а перегружается лишь часть, содержащая изменившиеся данные. Все новые сервисы Google, в том числе GMail, Orkut, Google Groups, Google Maps, Google Suggest, Google Finance, являются AJAX-приложениями. Базисом технологии являются:
· использование модели DOM для отображения и обновления содержимого.
· обмен и обработка данных в виде XML
· асинхронные запросы к серверу через интерфейс XMLHttpRequest.
· использование JavaScript.
Рассмотрим отличия классической модели веб-приложения и модели AJAX.
Классическая модель веб-приложения:
— Пользователь загружает в браузер веб-страницу и вызывает событие.
— Браузер отправляет HTTP запрос серверу.
— В ответ сервер генерирует новую веб-страницу и возвращает ее браузеру.
— В результате отображается новая страница.
Модель AJAX:
В этом случае между загруженной в браузер страницей и сервером появляется еще одна прослойка — уровень AJAX.
-Пользователь загружает на web-страницу.
-По действию пользователя генерируется событие.
-Скрипт определяет, какая информация необходима для обновления страницы и передает ее уровню AJAX.
-AJAX, используя браузер, отправляет соответствующий запрос на сервер.
-Сервер возвращает уровню AJAX только ту часть документа, на которую пришел запрос или только данные в формате XML.
-Уровень AJAX вызывает скрипт на языке JavaScript, который вносит изменения на страницу без ее полной перезагрузки.
При этом сервер возвращает не готовый HTML-код, а только данные необходимые для обновления страницы. Обновленные страницы создаются исходя из этих данных, с использованием методов DOM. Для передачи данных обычно используется XML файл, который формируется динамически.