AJAX

Содержание:

Что такое AJAX

AJAX (от англ. Asynchronous Javascript and XML) – средство обмена данными с сервером, синтез нескольких языков программирования, который ассоциируется с Web 2.0 и позиционируется как принципиально новое веб-приложение. Использование AJAX позволяет не обновлять страницу сайта при её частичном изменении – достаточно обновить только ту часть, которая изменилась. Это выгодно, если доступ к сети Интернет лимитирован, и удобно, поскольку обновление не требует много времени. Главное условие использования этого программного средства – постоянный контроль того, что происходит на веб-странице. Контроль реализуется с помощью текстовых сообщений или индикаторов загрузки.

Преимущества AJAX

Несмотря на то, что не все браузеры поддерживают данную систему, она пользуется большой популярностью у веб-мастеров и предоставляет массу преимуществ:

Создание простого веб-интерфейса.
Организация взаимодействия с пользователями.
Замена полной перезагрузки редактируемой страницы частичной перезагрузкой.
Удобство использования.

Система AJAX использует два способа работы с содержимым веб-страниц

Изменение содержания веб-страницы без перезагрузки.
Динамический обмен данными с использованием техники скрытого фрейма или XMLHttpRequest.

Обмен данными в AJAX

В AJAX реализована асинхронная передача данных, которая ускоряет работу: пока данные передаются на сервер, пользователь может выполнять другие действия. Важную роль играет индикация обмена данными, которая реализована только в версии Web 2.0: пользователь не воспринимает страницу как зависшую и ждёт, пока она обновится. Ответ от сервера можно получать в виде XML-кода, кода JSON (Javascript Object Notation) и текста, который выводится в контейнер. При получении ответа в формате XML он обрабатывается и преобразовывается в HTML (XHTML). Про получении ответа в формате JSON выполняется код для получения объекта Javascript. К ответу нужно подходить с осторожностью, поскольку он может содержать вредоносный код. Для того, чтобы не произошло сбоев в работе сайта, закодированные ответы от сервера нужно тщательно проверять и обрабатывать. Ещё один вариант обезопасить сайт – отправить холостой запрос, на который сервер не присылает ответ, он только изменяет данные на своей стороне.

Для обмена данными на странице создаётся объект XMLHttpRequest, который играет роль посредника между браузером и сервером. С его помощью можно отправлять запросы и получать ответы в виде кодов или текстов. Наиболее распространённый способ обмена данными в AJAX – GET-запрос. Это запрос к документу, размещённому на сервере, с передачей аргументов через URL. Подобные запросы не рекомендуется делать к серверам, на которых хранится большой объём данных. Для этого используются POST-запросы.

Клиентская часть AJAX, написанная на Javascript, обеспечивает достаточную функциональность и безопасность обмена данными с сервером, а серверная часть обрабатывает входные данные и на их основе генерирует новую информацию, а потом отдаёт её обратно клиенту. Для передачи небольших по объёму данных лучше использовать GET-запросы, для обновления или добавления большого объёма информации – POST-запросы.