AJAX(Asynchronous JavaScript And XMl)
SKRIPTA IZ PREDMETA
INTERNET TEHNOLOGIJE
AJAX(
A
synchronous
J
avaScript
A
nd
X
Ml)
SADRŽAJ
PRIMERI KORIŠĆENJA AJAXA IZ PRAKSE................................................................13
2

primetno sa slike dole je da postoji vremenski interval izmedju pravljenja zahteva i odgovora
na isti. Za vreme tog intervala klijent čeka, bez mogućnosti da pravi nove zateve ili nastavi
svoje korišćenje web aplikacije. Može se zaključiti da kod sinhronog prenosa podataka ne
postoji mogućnost za eliminisanje čekanja zato što se procesi obavljaju jedan za drugim, čak
i ukoliko za to nema potrebe.
Slika 1 Sinhroni prenos podataka
Kod asinhronog prenosa podataka izmedju klijenata i servera karakteristično je da se
korisničko korišćenje web aplikacije nikada ne prekida. Za razliku od sinhronog režima rada,
ovde korisnik može da nastavi korišćenje aplikacije nezavisno od toga hoće li sistem
odgovoriti na njegov zahtev neposredno ili nešto kasnije. Ono što je uočljivo na prvi pogled
su neprekidne linije koje označavaju aktivnosti korisnika i AJAX-ovog engine-a.
Slika 2 Asinhroni prenos podataka
Klasične aplikacije funkcionišu tako što šalju zahtev, server ih obrađuje i konačno vraća
odgovor. Međutim, sve vreme rada servera i aplikcaija je «zamrznuta». Kada server
kompletira rad, kao odgovoro korisnik dobija novu stranicu.
4
Sa asinhronom komunikacijom u pozadini se odvija komunikacija, a korisnik uopšte ne zna
da se tako nešto dešava.
1.2 AJAX
AJAX predstavlja web razvojnu tehniku za kreiranje interaktivnih web sadržaja. AJAX
tehnologija se zasniva na razmeni malih količina podataka sa serverom, kako korisnik ne bi
stalno morao da osvežava stranicu. Na taj način se omogućava potpuna interaktivnost,
efikasnost i poboljšava funkcionisanje stranice uopšte. AJAX nije tehnologija sam po sebi,
već termin koji se odnosi na korišćenje grupe tehnologija.
AJAX obuhvata:
prezentaciju baziranu na standardima koristeći XHTML i CSS;
dinamički prikaz i interakciju preko Document Object Model-a;
razmenu i manipulaciju nad podacima koristeći XML i XSLT;
asinhrono prikupljanje podataka uz pomoć XMLHttpRequest-a koji čini jezgro;
i JavaScript koji povezuje sve u celinu.
Ideja koja se krije iza AJAX-a jeste da se stranica na kojoj se odvija web aplikacija učita
samo jednom, a da se svaka dalja komunikacija sa serverom sakrije od očiju korisnika i
obavlja bez ponovnog učitavanja čitave stranice. Svaki prenos podataka između servera i
klijenta (u slučaju AJAX-a to je browser) vrši se u pozadini. Jasno je da je ovo nemoguće
izvesti statičkim HTML-om, pa tu na scenu stupa JavaScript. JavaScript je zadužen za
komuniciranje sa serverom – slanje HTTP zahteva, prijem podataka sa servera i njihov
prikaz na stranici, a i interakcija sa korisnikom postiže se korišćenjem ovog jezika.
Neki od osnovnih principa na kojima bi trebalo da se zasnivaju AJAX aplikacije:
Minimalan protok - AJAX aplikacije bi trebalo da šalju i primaju sa servera što je
moguće manje informacija
AJAX aplikacije predstavljaju korisniku drugačije modele interakcije od tradicionalnih
web aplikacija. Nasuprot “klik – čekaj“ prirodi standardnih web aplikacija, AJAX
predstavlja modele interakcije koji su slični desktop aplikacijama. Bez obzira koji se
model interakcije koristi, najbitnije je obezbediti konzistentnost kako bi korisnik znao
šta treba sledeće da uradi.
Izbegavaju se nepotrebni elementi na strani kao što su animacije ili delovi koji
trepere.
Izbegava se preuzimanje cele strane - celokupna komunikacija sa serverom, nakon
učitavanja inicijalne web strane treba da bude zadatak AJAX engine –a
AJAX omogućava različite funkcionalnosti:
Validacija podatka u realnom vremenu - Podaci na formama kao što su: user
IDs, serial numbers, postal codes, i ostali koji zahtevaju validaciju od strane servera,
mogu biti provereni pre submit- ovanja forme.
Autocompletion i autosuggest - Određeni delovi podataka koji se unose od
strane korisnika(posetioca): e-mail adresa, ime, grad i ostali se mogu automatski
kompletirati, tj. dovršiti odmah nakon što se unesu samo početni delovi.
5
Ovaj materijal je namenjen za učenje i pripremu, ne za predaju.
Slični dokumenti