AJAX (Asynchronous Javascript And XML)
AJAX (от англ. Asynchronous Javascript And XML — «асинхронный JavaScript и XML») — технология позволяющая веб-страницам производить обмен данными с веб-сервером в фоновом режиме без полной перезагрузки страницы. Использование данной технологии позволяет добиться большего визуального быстродействия веб-приложений.
В основе технологии AJAX лежит два принципа:
- динамическое обращение к веб-серверу посредством объекта XmlHttpRequest, либо динамического создания/изменения адреса дочерних фреймов, либо динамическое создание/изменение адреса тэгов <script>
- использование DHTML (Dynamic HTML) для динамического изменения содержимого сраницы
Использование технологии AJAX позволяет значительно сократить объем передаваемого между сервером и клиентом трафика. Также значительно уменьшается загруженность сервера, поскольку вместо полного формирования страницы ему достаточно лишь возвратить результат, запрашиваемый клиентом. В результате уменьшения времени отклика сервера и сокращении передаваемого трафика, приложение реагирует на действия пользователя быстрее.
Однако данная технология имеет и ряд недостатков, не позволяющих использовать ее в настоящее время повсеместно. Поскольку содержимое страниц формируется динамически, в результате взаимодействия с пользователем, такие страницы не доступны поисковым роботам. Также такие страницы не позволяют использовать стандартные средства навигации броузеров (кнопки назад и вперед на таких страницах не работают, поскольку с точки зрения броузера это одна страница).