AJAX

Матеріал з Вікіпедії — вільної енциклопедії.

AJAX (Asynchronous JavaScript And XML) — підхід до побудови призначених для користувача інтерфейсів веб-додатків, за якого веб-сторінка не перезавантажуючись, сама довантажує потрібні користувачу дані. AJAX — один з компонентів концепції DHTML.

Про AJAX заговорили після появи в лютому 2005-го року статті Джесі Джеймса Гарретта (Jesse James Garrett) «Новий підхід до веб-додатків». AJAX — не самостійна технологія. Це ідея.

Зміст

[ред.] Суть підходу

AJAX підхід до розробки призначених для користувача інтерфейсів базується на двох основних принципах:

  • Використання DHTML для динамічної зміни змісту сторінки.
  • Використання XMLHttpRequest для звернення до сервера «на льоту», не перезавантажуючи всю сторінку повністю (також існує альтернативний варіант — динамічне підвантаження JavaScript з використанням DOM).

Використання цих двох підходів дозволяє створювати набагато зручніші веб-інтерфейси користувача на тих сторінках сайтів, де необхідна активна взаємодія з користувачем. AJAX — асинхронний, тому користувач може продовжувати переглядати контент сайту, поки сервер все ще обробляє запит. Оглядач Тенет не перезавантажує web-сторінку і дані посилаються на сервер без візуального підтвердження (крім випадків, коли ми самі захочемо показати процес з'єднання з сервером). Використання AJAX стало найбільш популярне після того, як компанія Google почала активно використовувати його при створенні своїх сайтів, таких як Gmail, Google Maps і Google Suggest. Створення цих сайтів підтвердило ефективність використання даного підходу.

[ред.] Порівняння класичного підходу та AJAX

Графічне порівняння класичного підходу та AJAX

Класична модель веб-застосування:

  1. Користувач заходить на веб-сторінку і натискає на який-небудь її елемент
  2. Оглядач тенет надсилає запит серверу
  3. У відповідь сервер генерує повністю нову веб-сторінку і відправляє її браузеру і т.д.
    • З боку сервера можлива генерація не всієї сторінки наново, а тільки деяких її частин, з подальшою передачею користувачу.

Модель AJAX:

  1. Користувач заходить на веб-сторінку і натискає на який-небудь її елемент.
  2. Браузер відправляє відповідний запит на сервер.
  3. Сервер віддає тільки ту частину документа, яка змінилася.

[ред.] Оглядачі, які підтримують AJAX

Зауважте, що це загальний список і підтримка застосувань AJAX залежатиме від особливостей підтримки оглядача:

  • Версія Microsoft Internet Explorer 5.0 і вище, а також оглядачі засновані на ньому (Версії ОС Mac, не підтримуються)
  • Оглядач Opera та програмне забезпечення для пристроїв від Opera Software
  • Засновані на Gecko подібно до Mozilla, Mozilla Firefox, SeaMonkey, Camino, Flock, Epiphany, Galeon та версія Netscape 7.1 і вище
  • Оглядачі, з вбудованим KHTML API версії 3.2 і вище, зокрема Konqueror 3.2 і вище, версія Apple Safari 1.2 і вище

[ред.] Дивіться також

[ред.] Посилання

  • Google suggest та Google Maps — проекти, які показали можливості Ajax
  • Protopage — гарний приклад сайту на Ajax (особисті замітки)
  • eyeOS - online-робочий стіл на Ajax
  • BIM - online-аггрегатор новин на Ajax
  • Браузер по Wikipedia.org - оболочка-навигатор по Wikipedia.org на Ajax

[ред.] Розробникам

[ред.] Інформаційні ресурси

  • Портал Ajax Patterns — присвячений розробці сайтів на Ajax.
  • Портал AJAX Impact — огляд новин індустрії Ajax, інструментів для розробки, статті.

[ред.] Інструментарії