Классическая модель веб-приложения

  • Пользователь заходит на веб-страницу и нажимает на какой-нибудь её элемент.
  • Браузер формирует и отправляет запрос серверу.
  • В ответ сервер генерирует совершенно новую веб-страницу и отправляет её браузеру и т. д. После чего браузер полностью перегрузит всю страницу.

Модель AJAX

  • Пользователь заходит на веб-страницу и нажимает на какой-нибудь её элемент.
  • Скрипт (на языке JavaScript) определяет, какая информация необходима для обновления страницы.
  • Браузер отправляет соответствующий запрос на сервер.
    Сервер возвращает только ту часть документа, на которую пришел запрос.
  • Скрипт вносит изменения с учётом полученной информации (без полной перезагрузки страницы).

Часто сервер передаёт не готовый HTML-код, а только данные; а HTML-элементы создаются исходя из этих данных, с использованием методов модификации DOM, или трансформации XSLT. При этом в качестве формата передачи данных обычно используются XML или JSON.

JSON хорош тем, что на стороне клиента его не надо обрабатывать каким-то специальным образом, достаточно выполнить вызов функции eval(). Однако, исходя из соображений безопасности, его необходимо анализировать, так как при передаче вредоносного кода функция eval() выполнит данный код.

25.08.2007