AJAX

Toto označení bylo poprvé použito Jesse James Garretem v roce 2005 v článku AJAX: New Approach to the Web Application na serveru společnosti Adaptive Path. Autor píše:

„AJAX není jedna technologie. Ve skutečnosti je to několik technologií, na sobě nezávislých a samočinných, které při společném nasazení nabízejí další možnosti využití. AJAX zahrnuje:

  • na standardech založené zobrazování pomocí XHTML a CSS;
  • dynamické zobrazování a interakci pomocí Document Object Model;
  • výměnu a manipulaci dat pomocí XML a XSLT;
  • asynchronní příjem dat pomocí XMLHttpRequest;
  • Javascript, který všechno to spojuje dohromady.“ (Garret, 2005)

Jedna z velkých nevýhod pro uživatele tradičních stránek založených na čistém HTML či XHTML je čas strávený čekáním na načítání stránek poté, co byla vyslána žádost kliknutím na některý prvek na stránce. Jak již bylo zmíněno, během let bylo učiněno několik pokusů přinést stránkám větší dynamiku za použití jednotlivých technologií jako Javascript, skryté rámce, DHTML, kaskádové styly a ActiveX prvku XMLHttpRequest od Microsoftu.

Tradiční komunikace klient–server při načítání webových stránek
Obrázek 7 – Tradiční komunikace klient–server při načítání webových stránek

Oproti standardnímu modelu komunikace webových aplikací, kde je prohlížeč zodpovědný za iniciaci žádosti webovému serveru a za zpracování odpovědi, AJAX model poskytuje zprostředkující mezivrstvu – AJAX Engine, která zajišťuje tuto komunikaci. AJAX Engine je obyčejně javascriptový objekt volaný¨vždy, kdykoli mají být od serveru přijata další data. To je zásadní rozdíl proti tradičnímu přístupu, kde dojde pouze k poskytnutí odkazu na další (externí) zdroj/URL, jehož načtení musí klient potvrdit (např. uživatel kliká na šipku pro posun mapy). V pojetí AJAXu může být odkaz na zdroj vyvolán a zpracován pomocí AJAX Engine. Požadavek je zpracován asynchronně, což znamená, že požadavek bude vyslán, ale nebude se čekat na odpověď, namísto toho se bude dále provádět kód klienta a odpověď bude zpracována později.

Server, který obyčejně dodává klientům na základě jejich požadavku HTML dokumenty, CSS šablony vzhledu nebo javascriptový kód, je kromě toho nakonfigurován tak, že vrací i data, která umí AJAX Engine interpretovat. Tato data jsou nejčastěji ve formě XML, ale lze použít jakýkoliv jiný formát, který AJAX Engine podporuje.

V okamžiku, kdy obdrží AJAX Engine odpověď ze serveru, může provést příslušnou akci – parsování dat, změnu podoby uživatelského rozhraní či poskytnutí zaslaných informací uživateli. Díky tomu, že tento proces zahrnuje přenos menšího množství informací než tradiční webový aplikační model a uživatelské rozhraní je aktualizováno rychleji a bez nutnosti překreslování celého výsledného aplikačního okna, uživatel může pracovat rychleji (Toth, 2007; Loosley, 2006).

Komunikace klient–server za pomoci AJAXu.
Obrázek 8 – Komunikace klient–server za pomoci AJAXu

Vložit komentář

Váš email není nikdy publikován nebo sdílen. Povinná pole jsou označena *