Ajax (програмиране)

Ajax
ПарадигмаWeb Application, HTML, JavaScript, DHTML, Domain Object Model, XMLHttpRequest, JSON, XML, XSLT, XHTML, Cascading Style Sheets
Реализиране през2005 г.
АвторДжеси Джеймс Гарет
Ajax в Общомедия

Ajax (съкращение на Asynchronous JavaScript and XML) е похват в уеб разработките за създаване на интерактивни уеб приложения. Предимството на Ajax е, че посредством използването му уеб страниците се зареждат по-бързо. Посредством асинхронен обмен на малки порции данни „зад кадър“ могат да се променят само частично информации на уеб страницата. По този начин се намалява количеството информация, която се трансферира между сървъра и клиента. Асинхронността позволява да не бъде необходимо да се презарежда цялата страница отново. По този начин се повишава интерактивността, скоростта и функционалността на страниците.

Сам по себе си Ajax не е технология, а термин за употребата на група технологии. За първи път се споменава през февруари 2005 г. от Джеси Джеймс Гарет в статията му Ajax: A New Approach to Web Applications.[1]

Ajax техниката се използва като комбинация от:

  • XHTML (или HTML) и CSS за форматиране и ошрифтяване на текста.
  • DOM (Document Object Model) реализиран чрез програмиране от страна на клиента с помощта на езици като JavaScript и JScript за динамична визуализация и интерактивност на предоставената информация.
  • XMLHttpRequest (XHR) обекта за обмяна на данни асинхронно с уеб сървър. В някои случаи се използва IFrame обектът вместо XMLHttpRequest.
  • XML в някои случаи е използваният формат за трансфер на данни между сървър и клиент. Все пак всеки формат е удачен, включително преформатиран HTML, чист текст, JavaScript Object Notation (JSON) и др.
Модел на класическите приложения за мрежата (вляво) в пряко сравнение с използването на AJAX (вдясно).
  • Няма нужда от презареждане на страницата.[1]
  • Времената за отговор се скъсяват.
  • Броят заявки към сървъра намалява, защото скриптовете и CSS файловете се зареждат само веднъж.[2]
  • Посредством променливи в JavaScript може да се запази състоянието на програмата.
  • Не се поддържа от стари браузъри, както и от някои мобилни телефони.
  • При натискане на бутона за връщане назад на браузъра приложението не се връща в предишното състояние, а в състоянието при зареждането му.
  • При запазване на отметка в браузъра се запазва отметка към приложението в началното му състояние.
  • Повечето търсачки не изпълняват код на JavaScript,[3] поради което не цялото съдържание на сайтове с Ajax се индексира.