Якщо ви абсолютно не знайомі з AJAX (що розшифровується як асинхронний Javascript та XML), запис AJAX у вікіпедії є гарною відправною точкою:
Як і DHTML та LAMP, AJAX - це не технологія сама по собі, а група технологій. AJAX використовує комбінацію:
- HTML і CSS для розмітки та стилізації інформації.
- DOM, доступний за допомогою JavaScript, для динамічного відображення та взаємодії з представленою інформацією.
- Метод асинхронного обміну даними між браузером та сервером, що дозволяє уникнути перезавантаження сторінки. Зазвичай використовується об'єкт XMLHttpRequest (XHR), але іноді замість цього використовується об'єкт IFrame або динамічно доданий тег.
- Формат даних, що надсилаються у браузер. Поширені формати включають XML, попередньо відформатований HTML, звичайний текст та позначення об’єктів JavaScript (JSON). Ці дані можуть створюватися динамічно за допомогою будь-якої форми сценаріїв на стороні сервера.
Як бачите, з чисто технологічної точки зору тут немає нічого справді нового. Більшість деталей AJAX вже були там у 1994 році (1999 для XMLHttpRequest
об’єкта). Справжньою новинкою було спільне використання цих частин, як це зробив Google із GMail (2004) та Google Maps (2005). Насправді обидва сайти внесли великий внесок у просування AJAX.
Зображення вартістю в тисячу слів, під діаграмою, яка ілюструє зв'язок між клієнтом та віддаленим сервером, а також відмінності між класичними та AJAX-програмами:
Що стосується помаранчевої частини, ви можете зробити все вручну (разом із XMLHttpRequest
об’єктом) або скористатися відомими бібліотеками JavaScript, такими як jQuery , Prototype , YUI тощо, щоб "AJAXify" на стороні клієнта вашої програми. Такі бібліотеки мають на меті приховати складність розробки JavaScript (наприклад, сумісність між браузерами), але для простої функції це може бути надмірним.
На стороні сервера також можуть допомогти деякі фреймворки (наприклад, DWR або RAJAX, якщо ви використовуєте Java), але все, що вам потрібно зробити, - це в основному виставити службу, яка повертає лише необхідну інформацію для часткового оновлення сторінки (спочатку як XML / XHTML - X в AJAX - але сьогодні сьогодні надають перевагу формату JSON ).