Gymterview
junior

Что такое AJAX? Как принципиально устроена эта технология?

AJAX (Asynchronous JavaScript and XML) — подход к построению интерактивных веб-приложений, при котором обмен данными с сервером происходит в фоновом режиме, без полной перезагрузки страницы.

Аналогия из жизни: представьте, что вы в ресторане. Без AJAX вам пришлось бы каждый раз пересаживаться за новый стол, чтобы получить обновлённое меню. С AJAX официант приносит только изменившиеся блюда к вашему столу, пока вы продолжаете ужинать.

Как работает AJAX

  1. Пользователь взаимодействует с элементом на странице (клик, ввод текста)
  2. JavaScript определяет, какие данные нужны
  3. Браузер асинхронно отправляет запрос на сервер (через XMLHttpRequest или fetch)
  4. Сервер возвращает только запрошенные данные (не всю страницу)
  5. JavaScript обновляет нужную часть страницы через DOM без перезагрузки

Технологии, составляющие AJAX

AJAX — не отдельная технология, а концепция использования нескольких технологий:

  • HTML/CSS — структура и стилизация
  • DOM — динамическое изменение содержания страницы через JavaScript
  • XMLHttpRequest / fetch API — асинхронный обмен данными с сервером
  • JSON (или XML, HTML) — формат передачи данных

Название содержит «XML», но на практике данные почти всегда передаются в формате JSON, а не XML. AJAX базируется на двух принципах: динамическое обращение к серверу без перезагрузки и использование DHTML (динамический HTML) для обновления содержимого страницы.

На собеседовании: опишите пятишаговый цикл (событие → запрос → ответ → обновление DOM). Упомяните, что современная альтернатива XMLHttpRequest — это Fetch API. Для Java-разработчика важно понимать, что AJAX-запрос — это обычный HTTP-запрос, и на сервере он обрабатывается контроллером (Spring MVC @RestController).