Сегодня уже достаточно многие пользователи, посещающие тот или иной веб-ресурс, не хотят видеть с каждым последующим действием, как страница вновь и вновь перезагружается. А ведь в наши дни уже немало таких сервисов, которые работают, не пользуясь такой функцией из каменного века, как перезагрузка страницы. Пример тому – работа социальных сетей и специальных сервисов для веб-мастера. Все это возможно благодаря технологии AJAX. Технологии AJAX – это свобода действия для пользователя и уход от функции перезагрузки страницы.
О концепции технологии AJAX
Наверное, ни для кого уже не секрет, в чем суть этой «золотой» технологии – в возможности обмена данных браузера и сервера, используя только фоновый режим – без обновления страницы. По-другому такой обмен можно назвать, как асинхронный. Если сказать проще, то этот процесс означает, что второстепенное действие может быть выполнено параллельно с тем, что идет процесс выполнения основного действия.
Примером асинхронности при технологии AJAX может быть первостепенное действие, то есть то, что браузер отображает страницу, второстепенное – то, что в то же самое время, через сервер обрабатывается пользовательский запрос. В то время, как с помощью AJAX на сервере обрабатывается запрос и браузер ожидает ответа, пользователь продолжает работать на своей странице или видит процесс загрузки в виде AJAX loader.
В общем, процесс выглядит следующим образом — браузер и сервер непрерывно обмениваются данными, то есть:
- через пользовательский интерфейс данные попадают в браузер;
- затем идет отправка данных на сервер;
- на сервере данные обрабатываются, возможно, с занесением их в базу данных;
- все это время браузер ждет ответа, но работа с ним пользователя при этом продолжается;
- когда данные, в каком-либо формате, с сервера получены, они обрабатываются и пользователь видит их в контенте HTML страницы.
О схеме – технологии AJAX
Очень важно еще вот что:
Циркулирующие данные должны быть определенным образом отформатированы. К таким форматам относятся:
- XML (eXtensible Markup Language), называемый расширяемым языком разметок;
- JSON (JavaScript Object Notation), называемый текстовым форматом, основа которого — JavaScript.
Изредка бывает, что годится и свободный текстовый формат для передачи данных, но это большая редкость.
AJAX – это технология с расшифровкой Asynchronous JavaScript and XML, то есть разработчики ориентировались на формат XML. Однако, на практике чаще пользуются другим форматом – JSON, и связано это с его минимализмом.
Значит, подходят оба формата, просто данные, представленные в JSON, будут меньшими по размеру, а значит, и их передача будет более быстрой, чем в случае данных, представленных форматом XML.