AJAX (от англ.
Asynchronous
JavaScript and XML — «асинхронный
JavaScript и XML») — это подход к
построению интерактивных
пользовательских интерфейсов
веб-приложений, заключающийся в «фоновом»
обмене данными браузера с веб-сервером.
В результате при обновлении данных
веб-страница не перезагружается
полностью, и веб-приложения могут быть
сделаны более быстрыми и удобными.
AJAX — это не самостоятельная
технология, а скорее концепция
использования нескольких смежных
технологий. AJAX базируется на двух
основных принципах:
-
использование технологии
динамического обращения к серверу «на
лету», без перезагрузки всей страницы
полностью, например:
-
с использованием
XMLHttpRequest (основной метод);
-
через динамическое
создание дочерних фреймов;
-
через динамическое
создание тега <script>.
-
использование DHTML для
динамического изменения содержания
страницы;
В качестве формата
передачи данных обычно используются JSON
или XML.
AJAX стал особенно
популярен после использования его
компанией Google в сервисах Gmail,
Google Maps и Google Suggest.
Преимущества
Экономия трафика
Использование AJAX позволяет значительно, сократить трафик
при работе с веб-приложением, благодаря
тому, что часто вместо загрузки всей
страницы достаточно, загрузить только
небольшую изменившуюся часть.
Уменьшение нагрузки на
сервер
AJAX позволяет несколько
снизить нагрузку на сервер, к примеру, в
Gmail когда вы отмечаете прочитанные
письма, серверу достаточно внести
изменения в базу данных и отправить
клиентскому скрипту сообщение об
успешном выполнении операции, вместо
необходимости повторно создавать
страницу и отсылать ее клиенту.
Увеличение реакции
интерфейса
Поскольку нужно загрузить
только изменившуюся часть, то
пользователь видит результат своих
действий быстрее.
Недостатки
Интеграция со
стандартными инструментами браузера
Динамически создаваемые
страницы не регистрируются браузером в
истории посещения страниц, поэтому не
работает кнопка «Назад» предоставляющая
пользователям возможность вернуться к
просмотренным ранее страницам.
Другой недостаток
изменения контента страницы при
постоянном URL, заключается в
невозможности сохранения закладки на
желаемый материал. Частично решить эти
проблемы можно с помощью динамического
изменения идентификатора фрагмента (части
URL после #), что позволяют многие
браузеры.
Динамически загружаемое
содержание недоступно поисковикам
Поисковые машины не могут выполнять
JavaScript, поэтому разработчики должны
позаботиться об альтернативных способах
доступа к содержимому сайта.
Старые методы учета
статистики сайтов становятся
неактуальными
Многие сервисы статистики ведут учет
просмотров новых страниц сайта, для
сайтов страницы которых широко
используют AJAX, такая статистика теряет
актуальность.
|