Словарь терминов



A B C D E F G H I J K L M N O P R S T U V W X Y
А Б В Г Д К Л М О П Р С Т Ф Х Ц Ч Ш Э Ю Я

Asynchronous JavaScript and XML (AJAX) —  Асинхронный JavaScript и XML - архитектура веб-приложений, основанная на взаимодействии с протоколом HTTP и объектом XMLHttpRequest.
Термин был придуман Джессом Джеймсом Гарреттом (Jesse James Garrett) и впервые был озвучен в феврале 2005 года в статье \\'Ajax: A New Approach to Web Applications\\'

Значимость архитектуры Ajax сложно переоценить, и наличие простого названия лишь послужило катализатором начала революции в разработке веб-приложений. Однако, как оказывается, этот акроним недостаточно полно описывает технологии, используемые Ajax-приложениями. Все клиентские JavaScript-сценарии используют механизм обработки событий и поэтому являются асинхронными.
Кроме того, применение XML в веб-приложениях, разработанных в стиле Ajax, часто бывает удобным, но совершенно не обязательно.
Главная особенность Ajax-приложений - взаимодействие с протоколом HTTP, но это никак не отражено в названии AJAX.

К слову, XMLHttpRequest, на котором основана технология Ajax, был доступен в браузерах Microsoft и Mozilla с 2001 года, но не привлекал внимания до 2005 года, до тех пор, когда был введен термин Ajax.

Использование технологии ajax сделает систему интерактивной и избавит пользователя от просмотра белой страницы.
AJAX — это подход к построению интерактивных пользовательских интерфейсов веб-приложений. При использовании AJAX веб-страница не перезагружается полностью в ответ на каждое действие пользователя. Вместо этого с веб-сервера догружаются только нужные пользователю данные.

AJAX основан на использовании объекта XMLHttpRequest в асинхронном режиме. XMLHttpRequest дает возможность браузеру делать HTTP-запросы к серверу без перезагрузки страницы. Несмотря на слово XML в названии, XMLHttpRequest может работать с данными в любом текстовом формате.

Алгоритм работы с этим объектом довольно прост:
  • Делаем асинхронный запрос
  • Рисуем анимированную картинку или просто надпись типа Loading...
  • В onreadystatechange при достижении состояния 4 убираем Loading и, в зависимости от status вызываем обработку ответа или ошибки




  • На рис.выше представлена традиционная модель веб-приложения и модель работы ajax-приложения.
    В традиционной модели клиент с сервером имеет взаимодействие типа старт-стоп-старт-стоп. Т.е. на любое действие пользователя, клиент отправляет HTTP-запрос на сервер. Сервер производит необходимую обработку - получает данные из БД, обрабатывает данные и затем выдаёт HTML страницу клиенту.
    В модели AJAX приложения вводится промежуточный слой между пользователем и сервером – AJAX движок, написанный на JavaScript. Действие, которое в обычном случае потребовало бы HTTP-запроса, осуществляется посредством JavaScript запроса к AJAX-движку.

    Что почитать по теме?