Ajax (ohjelmointi)

Ajax (akronyymi sanoista Asynchronous JavaScript And XML)[1] on joukko web-sovelluskehityksen tekniikoita, joiden avulla web-sovelluksista voi tehdä vuorovaikutteisempia. Alkuperäisessä merkityksessään AJAX:lla on alun perin viitattu tekniikkaan, jossa verkkosivulla JavaScriptillä asynkronisesti tehtävistä HTTP-pyynnöistä palautetaan XML-merkkausta, mutta nykyään käytetään laajasti yksinkertaisempaa JSON-merkkausta. Nykyisin Ajax-tekniikoilla viitataan yleisesti samankaltaiseen toimintatapaan: Ajaxissa selainohjelma vaihtaa pieniä määriä dataa palvelimen kanssa taustalla niin, ettei koko verkkosivua tarvitse ladata uudelleen joka kerta käyttäjän tehdessä muutoksen [2]. Tekniikan päämääränä on siis lisätä verkkopalvelun vuorovaikutteisuutta, nopeutta ja käytettävyyttä.

Ajax koostuu seuraavien tekniikoiden yhdistelmästä:

  • XHTML (tai HTML), CSS – informaation merkitsemiseen ja muotoiluun. [1]
  • DOM[1] asiakaspuolen skriptikielellä – erityisesti ECMAScript-toteutukset (kuten JavaScript ja JScript). Käytetään informaation dynaamiseen esittämiseen ja vuorovaikutukseen informaation kanssa.
  • XMLHttpRequest-objekti – datan vaihtamiseen asynkronisesti verkkopalvelimen kanssa.[1] Joissakin Ajax-puitteissa ja tietyissä tilanteissa, IFrame-objektia käytetään XMLHttpRequest-objektin sijasta datan vaihtamiseen palvelimen kanssa. Ajax-kysely voidaan muodostaa myös synkronisesti. Tätä tarvitaan tilanteessa, jolloin lähetetään peräkkäin monta eri kyselyä, jotka vaikuttavat toistensa sisältöön. Tällöin palautetun datan saapumisjärjestys on olennaista.
  • XML – käytetään yleisesti muotona datan siirtämiseen takaisin palvelimelta[1], vaikkakin mikä tahansa muoto toimii: esimuotoiltu HTML, pelkkä teksti, JSON tai jopa EBML.

DHTML:n, LAMP:n ja SPA:n tapaan Ajax ei ole itsenäinen teknologia, vaan termi tarkoittaa useiden teknologioiden samanaikaista käyttöä.

  1. a b c d e Smith, Dori ja Negrino, Tom: ”15. Ajaxin esitteleminen”, JavaScript: Tehokas hallinta, s. 359. readme.fi, 2007.
  2. http://www.adaptivepath.com/ideas/essays/archives/000385.php (Arkistoitu – Internet Archive)

© MMXXIII Rich X Search. We shall prevail. All rights reserved. Rich X Search