You are on page 1of 15

IDZ DO

PRZYKADOWY ROZDZIA
SPIS TRECI

KATALOG KSIEK
KATALOG ONLINE
ZAMW DRUKOWANY KATALOG

TWJ KOSZYK
DODAJ DO KOSZYKA

CENNIK I INFORMACJE
ZAMW INFORMACJE
O NOWOCIACH
ZAMW CENNIK

CZYTELNIA
FRAGMENTY KSIEK ONLINE

Wydawnictwo Helion
ul. Kociuszki 1c
44-100 Gliwice
tel. 032 230 98 63
e-mail: helion@helion.pl

AJAX w mgnieniu oka


Autor: Phil Ballard
Tumaczenie: Jacek Lempart, Magdalena Faszczewska
ISBN: 83-246-0662-9
Tytu oryginau: Teach Yourself AJAX in 10 Minutes
Format: A5, stron: 256
Opanuj technologi, ktra zrewolucjonizowaa sposb obsugi aplikacji internetowych
Poznaj podstawy tworzenia witryn WWW
Stwrz aplikacje w technologii AJAX
Wykorzystaj dane w formacie XML
AJAX, bdcy poczeniem JavaScriptu, jzyka XML i arkuszy stylw, to jedna
z technologii, ktre wprowadziy ostatnio sporo zamieszania w rodowisku projektantw
witryn i aplikacji WWW. Jej zastosowanie zdecydowanie upraszcza i przyspiesza
korzystanie z programw dostpnych przez przegldark WWW. AJAX sprawia,
e zawarto strony nie musi by przeadowywana po kadej akcji uytkownika.
Witryna WWW przygotowana z wykorzystaniem technologii AJAX przypomina
tradycyjn aplikacj, komunikacja z serwerem nie przeszkadza w korzystaniu z niej,
a dynamiczne zmiany elementw strony przebiegaj znacznie szybciej.
Ksika AJAX w mgnieniu oka to wprowadzenie do tematyki projektowania witryn
i aplikacji WWW w technologii AJAX. Czytajc j, opanujesz podstawy stosowania
AJAX-a we wasnych projektach. Poznasz technologie przetwarzania danych ze stron
WWW po stronie przegldarki i serwera oraz dowiesz si, czym jest obiektowy model
dokumentu. Nauczysz si korzystania z obiektw JavaScriptu, jzyka XML i protokou
SOAP. Stworzysz wasne aplikacje w technologii AJAX i dowiesz si, jak unika
najczciej popenianych bdw.
Podstawy jzyka HTML
Zasada dziaania protokou HTTP
JavaScript i PHP
Obiektowy model dokumentu (DOM)
Struktura aplikacji AJAX
Obiekty JavaScriptu
Zwracanie danych w postaci tekstu i plikw XML
Technologia AHAH
Usugi sieciowe i protok SOAP
Korzystanie z biblioteki Rico
Zacznij tworzy nowoczesne witryny

O autorze .....................................................................9
Wprowadzenie ............................................................11
O ksice ................................................................................... 11
Czym jest Ajax? ........................................................................ 12
Dla kogo przeznaczona jest ta ksika ..................................... 13
Czego potrzebuj, aby skorzysta z tej ksiki? ....................... 13
Konwencje uyte w ksice ...................................................... 14

Cz I

Powtrka z technologii internetowych ..........15

Rozdzia 1. Anatomia witryny internetowej ....................................17


Krtka historia sieci Internet ..................................................... 17
Dziaanie sieci Internet ............................................................. 18
Podsumowanie .......................................................................... 24
Rozdzia 2. Pisanie stron internetowych w jzyku HTML ................25
Wprowadzenie do HTML ......................................................... 25
Elementy strony HTML ............................................................ 28
Bardziej zaawansowana strona HTML ..................................... 33
Niektre uyteczne znaczniki HTML ....................................... 35
Kaskadowe Arkusze Stylw (CSS) w dwie minuty ................. 36
Podsumowanie .......................................................................... 37
Rozdzia 3. Wysyanie da przy uyciu protokou HTTP ...............39
Wprowadzenie do HTTP .......................................................... 39
danie i odpowied HTTP ...................................................... 40
Formularze HTML .................................................................... 43
Podsumowanie .......................................................................... 46

Rozdzia 4.

Ajax w mgnieniu oka

Programowanie po stronie klienta przy uyciu JavaScript .. 47


O jzyku JavaScript ...................................................................47
Na samym dnie ..........................................................................49
Manipulacja danymi w JavaScript ............................................60
Podsumowanie ..........................................................................63

Rozdzia 5. Programowanie po stronie serwera przy uyciu PHP .....65


Wprowadzenie do PHP .............................................................65
Osadzanie PHP w stronach HTML ...........................................66
Zmienne w PHP ........................................................................68
Kontrola przebiegu programu ...................................................70
Podsumowanie ..........................................................................72
Rozdzia 6. Krtkie wprowadzenie do XML ....................................73
Wprowadzenie do XML ............................................................73
Podstawy XML .........................................................................74
JavaScript i XML ......................................................................78
Obiektowy model dokumentu (DOM) ......................................79
Podsumowanie ..........................................................................81

Cz II

Wprowadzenie do technologii Ajax ............... 83

Rozdzia 7. Anatomia aplikacji Ajax ..............................................85


Technika Ajax jest potrzebna ....................................................85
Wprowadzenie do Ajax .............................................................88
Czci skadowe Ajax ...............................................................90
Zoenie wszystkiego w jedn cao .......................................93
Podsumowanie ..........................................................................94
Rozdzia 8. Obiekt XMLHTTPRequest ...........................................95
Wicej o obiektach JavaScript ..................................................95
Wprowadzenie do XMLHTTPRequest .....................................97
Tworzenie obiektu XMLHTTPRequest ....................................98
Podsumowanie ........................................................................105
Rozdzia 9. Komunikacja z serwerem ..........................................107
Wysyanie da do serwera ...................................................107
Monitorowanie stanu serwera .................................................112
Funkcja zwrotna ......................................................................114
Podsumowanie ........................................................................116
Rozdzia 10. Uywanie zwrconych danych ...................................117
Waciwoci responseText oraz responseXML ......................117
Kolejna przydatna waciwo JavaScript DOM ....................121
Parsowanie responseXML ......................................................122

Spis treci

Zapewnienie obsugi uytkownika ......................................... 123


Podsumowanie ........................................................................ 125
Rozdzia 11. Nasza pierwsza aplikacja Ajax ..................................127
Budowanie aplikacji Ajax ....................................................... 127
Dokument HTML ................................................................... 128
Dodanie kodu JavaScript ........................................................ 129
Zoenie wszystkiego w jedn cao ..................................... 133
Podsumowanie ........................................................................ 136

Cz III Bardziej zaawansowane technologie Ajax .... 137


Rozdzia 12. Zwracanie danych w postaci tekstu .........................139
Wicej korzyci z waciwoci responseText ......................... 139
Podsumowanie ........................................................................ 146
Rozdzia 13. AHAH Asynchroniczny HTML i HTTP .....................147
Wprowadzenie do AHAH ....................................................... 147
Utworzenie maej biblioteki dla AHAH ................................. 149
Wykorzystanie myAHAHlib.js ............................................... 151
Podsumowanie ........................................................................ 156
Rozdzia 14. Zwracanie danych w postaci XML ............................157
x w Ajax .............................................................................. 157
Wasno responseXML ......................................................... 158
Projekt czytnik nagwkw RSS ....................................... 162
Podsumowanie ........................................................................ 170
Rozdzia 15. Usugi sieciowe i protok REST ...............................171
Wprowadzenie do usug sieciowych ....................................... 171
Protok REST ........................................................................ 172
Wykorzystanie protokou REST w praktyce .......................... 174
REST i AJAX ......................................................................... 178
Podsumowanie ........................................................................ 179
Rozdzia 16. Usugi sieciowe korzystajce z protokou SOAP .........181
Poznajemy protok SOAP
(ang. Simple Object Access Protocol) .................................. 181
Protok SOAP ........................................................................ 183
Wykorzystywanie modelu Ajax i protokou SOAP ................ 186
Ponowne spojrzenie na protokoy SOAP i REST ................... 187
Podsumowanie ........................................................................ 188

Ajax w mgnieniu oka

Rozdzia 17. Biblioteka jzyka JavaScript dla modelu Ajax ............189


Biblioteka modelu Ajax ..........................................................189
Przegld myAHAHlib.js .........................................................190
Implementacja naszej biblioteki ..............................................191
Korzystanie z biblioteki ..........................................................195
Poszerzanie biblioteki .............................................................198
Podsumowanie ........................................................................198
Rozdzia 18. Puapki Ajax ............................................................199
Typowe bdy Ajax .................................................................199
Przycisk Wstecz ......................................................................199
Ulubione i hipercza ..............................................................200
Informowanie uytkownika o zdarzeniu .................................201
Radzenie sobie z brakiem obsugi Ajax ..................................201
Roboty indeksujce w wyszukiwarkach .................................202
Aktywne elementy strony .......................................................203
Nie uywaj technologii Ajax, gdy jest to nieodpowiednie .....204
Bezpieczestwo .......................................................................204
Testowy kod na rnych platformach .....................................205
Ajax nie naprawi zego projektu .............................................205
Niektre programistyczne puapki ..........................................206
Podsumowanie ........................................................................207

Cz IV Komercyjne oraz otwarte zasoby


technologii Ajax ........................................ 209
Rozdzia 19. Zestaw narzdzi prototype.js ....................................211
Wprowadzenie do prototype.js ................................................211
Obudowywanie obiektu XMLHTTPRequest ..........................214
Przykadowy projekt czytnik cen akcji ..............................217
Podsumowanie ........................................................................219
Rozdzia 20. Zastosowanie Rico ..................................................221
Wstp do Rico .........................................................................221
Inne narzdzia Rico do tworzenia interfejsu ...........................226
Podsumowanie ........................................................................231
Rozdzia 21. Wykorzystanie XOAD ................................................233
Wprowadzenie do XOAD .......................................................233
XOAD HTML .........................................................................237
Zaawansowane programowanie w XOAD .............................239
Podsumowanie ........................................................................240
Skorowidz ................................................................241

Rozdzia 7.

W tym rozdziale zawarte s informacje o budowaniu poszczeglnych blokw


Ajax oraz o tym, jak one ze sob wsppracuj tworzc architektur aplikacji
Ajax. W dalszych rozdziaach czci II, Wprowadzenie do Ajax, zostan dokadniej przeanalizowane te komponenty, ktre ostatecznie skadaj si na
dziaajc aplikacj Ajax.

Technika Ajax jest potrzebna


W czci I, Przypomnienie technologii internetowych, dokonalimy przegldu
gwnych technologii, ktre umoliwiaj budow komponentw aplikacji Ajax.
Posiadasz zatem przynajmniej podstawow wiedz na temat JavaScript, PHP
oraz XML, czyli wszystkiego, z czego bdziemy korzysta w czci II.
Zanim przystpimy do omawiania poszczeglnych komponentw, przyjrzyjmy
si dokadniej temu, czego oczekujemy od naszej aplikacji Ajax.

86

Cz II Wprowadzenie do technologii Ajax

Interakcje tradycyjne
kontra Ajax klient-serwer
W rozdziale 1., Anatomia witryny internetowej, zosta omwiony tradycyjny
model interfejsu witryny internetowej. Kiedy pracujesz z tak witryn, poszczeglne strony zawierajce tekst, obrazki, formularze do wprowadzania danych itd. prezentowane s raz w danej chwili. Kada strona musi zosta obsuona z osobna przed przejciem do kolejnej.
Przykadowo, moesz wypeni formularz z danymi, wprowadzajc je i poprawiajc tyle razy, ile zechcesz. Jednoczenie wiesz, e dane nie powdruj do
serwera, dopki formularz nie zostanie ostatecznie zatwierdzony.
Rysunek 7.1 ilustruje ten rodzaj interakcji.
Rysunek 7.1.
Tradycyjne interakcje
klient-serwer

Po zatwierdzeniu formularza lub klikniciu cza nawigacyjnego musisz czeka, dopki ekran przegldarki jest odwieany, by wywietli now lub skorygowan stron, ktra zostaa wygenerowana przez serwer.
W miar jak Twoje dowiadczenie jako uytkownika Internetu si wzbogaca,
korzystanie z takiego interfejsu staje si niemal drug natur. Uczysz si pewnych praktycznych zachowa, ktre pozwalaj unika kopotw, jak na przykad nie naciskaj ponownie przycisku zatwierdzajcego formularz czy nie
naciskaj przycisku Wstecz po zatwierdzeniu formularza.
Niestety, interfejsy uytkownika zbudowane w oparciu o ten model posiadaj
kilka wad. Pierwsza to taka, e istnieje znaczce opnienie podczas wczytywania nowej lub skorygowanej strony. Nastpuje przerwanie tego, co uytkownicy postrzegaj jako tak zwany przebieg aplikacji.

Rozdzia 7. Anatomia aplikacji Ajax

87

Co wicej, caa strona musi zosta wczytana przy kadej okazji, nawet jeli
wikszo jej zawartoci jest identyczna z poprzedni stron. Elementy wsplne dla wielu stron danej witryny internetowej, takie jak nagwki, stopki
czy sekcje nawigacyjne, mog stanowi znaczn proporcj danych zawartych
w stronie.
Rysunek 7.2 ilustruje witryn wywietlajc strony przed zatwierdzeniem formularza i po nim, ukazujc, jak wiele identycznej zawartoci zostao wczytane
ponownie oraz jak relatywnie mao zmienia si zawarto strony.

Rysunek 7.2. Wiele elementw strony jest niepotrzebnie ponownie wczytywana

To niepotrzebne pobieranie danych marnuje pasmo i zwiksza opnienie we


wczytywaniu kadej nowej strony.
Pasmo odnosi si do pojemnoci kanaw komunikacyjnych przenoszcych informacj. W Internecie pasmo jest zwykle mierzone w bps
(ang. bits per second bity na sekund) lub wyszych mnonikach, takich jak Mbps (ang. milion bits per second milion bitw
na sekund).

88

Cz II Wprowadzenie do technologii Ajax

Bogate doznania uytkownika


Poczenie skutkw problemw opisanych powyej powoduje, e uytkownik
posiada duo gorszy interfejs uytkownika w sensie jego interaktywnoci
w porwnaniu do interfejsw oferowanych przez ogromn wikszo aplikacji
biurkowych.
W aplikacjach stacjonarnych oczekujesz, e wywietlana zawarto programu
pozostaje widoczna, a elementy interfejsu reaguj na wydawane polecenia,
podczas gdy proces przetwarzania wykonuje si po cichu w tle. Gdy na przykad pisz ten rozdzia wykorzystujc procesor tekstu, mog zapisa dokument
na dysku, przewin stron w gr lub d, zmieni krj czcionki i jej rozmiar
bez potrzeby czekania przy kadej okazji, a cay ekran zostanie odwieony.
Ajax pozwala doda do interfejsu Twojej aplikacji internetowej funkcjonalno,
ktra dotychczas bardziej powszechnie spotykana bya w aplikacjach biurkowych.
Wie si to czsto z okreleniem bogatego doznania uytkownika (ang. rich
user experience).

Wprowadzenie do Ajax
By wzbogaci doznania uytkownika, musisz doda pewne moliwoci do tradycyjnego podejcia do interfejsu aplikacji internetowych. Chcesz, aby strona
Twojego uytkownika bya interaktywna, odpowiadaa na akcje uytkownika
zmieniajc zawarto i by bya aktualizowana bez jakichkolwiek przerw na
wczytywanie strony lub odwieanie ekranu.
Aby to osign, Ajax buduje dodatkow warstw przetwarzania, pomidzy
stron internetow a serwerem.
Warstwa ta czsto okrelana jest mianem Moduu Ajax lub Osnowy Ajax.
Przechwytuje dania od uytkownika, a w tle obsuguje komunikacj z serwerem po cichu, dyskretnie i asynchronicznie. Rozumiemy przez to, e dania
i odpowiedzi serwera nie musz by zbiene z okrelon akcj uytkownika,
ale mog mie miejsce w dowolnym, wygodnym dla uytkownika czasie, by
poprawi dziaanie aplikacji. Przegldarka internetowa nie zamraa si teraz
i nie oczekuje ukoczenia przez serwer ostatniego dania. Zamiast tego, pozwala uytkownikowi na przewijanie ekranu strony, klikanie czy pisanie na
biecej stronie.

Rozdzia 7. Anatomia aplikacji Ajax

89

Aktualizowanie elementw strony, tak by odpowiaday skorygowanym danym


otrzymanym z serwera, jest rwnie wykonywane przez Ajax. Dzieje si to
dynamicznie podczas cigego korzystania ze strony.
Rysunek 7.3 prezentuje, jak wygldaj te interakcje.
Rysunek 7.3.
Interakcje Ajax
klient-serwer

Prawdziwa aplikacja Ajax


Google Suggest
Aby zobaczy przykad aplikacji Ajax w akcji, spjrzmy na Google Suggest.
Aplikacja ta rozszerza interfejs znajomej wyszukiwarki Google, oferujc uytkownikowi sugestie dla odpowiednich terminw, w oparciu o to, co zostao
w danym momencie wpisane.
Za kadym naciniciem klawisza przez uytkownika warstwa Ajax aplikacji
odpytuje serwer Google, czy istnieje odpowiednio podobna fraza; jeli tak, to
wywietla zwrcone dane w licie rozwijanej. Wraz z kad sugerowan fraz
listowana jest rwnie liczba rezultatw, ktrych spodziewaaby si wyszukiwarka dla poszukiwania przeprowadzonego dla tej frazy. W kadym momencie
uytkownik ma moliwo wyboru jednej z tych sugestii zamiast kontynuowania
pisania, a wyszukiwarka Google wykona przeszukiwanie dla wybranej frazy.
Poniewa serwer jest odpytywany przy kadym naciniciu klawisza, lista
rozwijana jest dynamicznie aktualizowana, bez zbdnego czekania na odwieenie strony lub innych podobnych przerwa.
Rysunek 7.4 pokazuje dziaajcy program. Moesz sam wyprbowa t aplikacj, korzystajc z hipercza strony domowej Google http://www.google.com/
webhp?complete=1&hl=en.

90

Cz II Wprowadzenie do technologii Ajax

Rysunek 7.4. Przykad aplikacji Ajax Google Suggest

A teraz zidentyfikujmy poszczeglne komponenty takiej aplikacji Ajax oraz


zobaczmy, jak one wsppracuj.
Google zaprezentowa rwnie inne aplikacje Ajax, ktre moesz wyprbowa, jak na przykad witryn internetow gmail, bdc serwisem
poczty elektronicznej. Innym przykadem moe te by Google Maps.
Po szczegy signij pod adres: http://www.google.com.

Czci skadowe Ajax


Teraz przeanalizujmy poszczeglne komponenty aplikacji Ajax.

Obiekt XMLHTTPRequest
Kiedy klikasz cze lub zatwierdzasz formularz HTML, wysyasz danie HTTP
do serwera, ktry odpowiada wysyajc do Ciebie now lub zmodyfikowan stron.
Aby jednak Twoja aplikacja internetowa moga pracowa asynchronicznie,

Rozdzia 7. Anatomia aplikacji Ajax

91

musisz posiada moliwo wysania dania HTTP do serwera bez powizania go z daniem wywietlenia nowej strony.
Moesz to osign dziki obiektowi XMLHTTPRequest. Ten obiekt JavaScript
potrafi utworzy poczenie z serwerem, a nastpnie wysya do niego dania
HTTP bez potrzeby powizania ich z wczytywaniem strony.
W nastpnych rozdziaach dowiesz si, jak utworzy instancj tego obiektu
oraz jak jego waciwoci i metody mog by wykorzystane przez procedury
JavaScript, zawarte w stronie internetowej, aby ustanowi asynchroniczne poczenie z serwerem.
Ze wzgldw bezpieczestwa obiekt XMLHTTPRequest moe generalnie czy si z adresami URL tej samej domeny, co wywoywana strona, oraz nie moe bezporednio czy si ze zdalnym
serwerem.

Rozdzia 8., Obiekt XMLHTTPRequest, omawia, jak utworzy instancj


obiektu XMLHTTPRequest oraz opisuje pokrtce waciwoci i metody
obiektu.

Rozmawianie z serwerem
W tradycyjnym modelu strony internetowej, kiedy wysyasz danie poprzez
hipercze lub zatwierdzenie strony, serwer przyjmuje to danie, wykonuje
wszelkie wymagane czynnoci po stronie serwerowej, by wreszcie wysa do
Ciebie now stron z zawartoci odpowiadajc akcji, jak wykonae.
Gdy to przetwarzanie ma miejsce, interfejs uytkownika jest skutecznie zamroony. Zapewne wiesz ju, kiedy serwer koczy swoje zadanie kiedy
w przegldarce pojawia si nowa lub zmodyfikowana strona.
Jednake w przypadku asynchronicznych da serwera komunikacja odbywa
si w tle, a ich ukoczenie niekoniecznie musi by powizane z odwieaniem
strony czy wczytywaniem nowej. Dlatego te musisz ustali, w jakim stopniu
serwer obsuy dane danie.
Obiekt XMLHTTPRequest posiada wygodn waciwo, ktra raportuje postp
obsugi dania serwera. Moesz sprawdzi t waciwo, uywajc procedur
JavaScript celem okrelenia momentu, w ktrym serwer zakoczy prace, a wyniki
jego dziaania s dostpne do wykorzystania.

92

Cz II Wprowadzenie do technologii Ajax

Z tego powodu Twj kod Ajax musi zawiera procedur monitorujc status
da serwera i odpowiednio si zachowywa. Przyjrzymy si temu zagadnieniu bliej w rozdziale 9., Rozmawianie z serwerem.

Co dzieje si na serwerze?
Dotychczas, gdy interesowalimy si skryptami serwerowymi, komunikacja za
pomoc obiektu XMLHTTPRequest bya po prostu innym daniem HTTP. Aplikacje Ajax niewiele przejmuj si tym, jakie jzyki programowania lub rodowisko jest obecne na serwerze. Przyjmujc, e strona kliencka warstwy Ajax
otrzymuje na czas poprawnie sformatowane odpowiedzi HTTP z serwera, wszystko bdzie pracowa poprawnie.
Moliwe jest napisanie prostej aplikacji Ajax w caoci bez skryptw serwerowych, po prostu wywoujc obiekt XMLHTTPRequest ze statycznym zasobem
serwera, jak na przykad dokumentem XML lub plikiem tekstowym.
Aplikacje Ajax mog wywoywa rozmaite inne serwerowe zasoby, takie jak
na przykad usugi sieciowe (ang. web services). W dalszej czci niniejszej ksiki zapoznamy si z pewnymi przykadami wywoywania usug sieciowych, korzystajc z takich protokow jak SOAP czy REST.
W niniejszej ksice bdziemy korzysta z popularnego serwerowego jzyka skryptowego PHP w procedurach serwerowych. Jeli jednak
czujesz si bardziej komfortowo uywajc takich jzykw jak ASP,
JSP czy innych, nic nie stoi na przeszkodzie, aby z nich korzysta.

Obsuga odpowiedzi serwera


Kiedy jeste informowany o tym, e asynchroniczne danie zostao z powodzeniem wykonane, moesz wykorzysta informacje zwrcone przez serwer.
Ajax pozwala, aby zwracane dane mogy mie rn posta, w tym na przykad tekst ASCII oraz dane XML.
W zalenoci od natury aplikacji, informacje te mog zosta nastpnie skonwertowane do innej postaci, wywietlone lub przetworzone w pewien zaoony
sposb w obrbie biecej strony.
Skupimy si na tych kwestiach w rozdziale 10., Uywanie zwrconych danych.

Rozdzia 7. Anatomia aplikacji Ajax

93

Inne zadania zarzdzajce


Od aplikacji Ajax wymagane bdzie rwnie wykonanie wielu innych zada.
Przykadem moe by wykrywanie bdw oraz ich odpowiednia obsuga, czy
te informowanie uytkownika o stanie przesanych da Ajax.
W kolejnych rozdziaach tej ksiki zostanie zaprezentowanych wiele przykadw.

Zoenie wszystkiego
w jedn cao
Przypumy, e chcesz zaprojektowa now aplikacj Ajax lub zaktualizowa
odziedziczon aplikacj internetow, tak by obsugiwaa techniki Ajax. Jak si
moesz z tym upora?
Po pierwsze musisz zdecydowa, jakie zdarzenia strony i akcje uytkownika
bd odpowiedzialne za wysyanie asynchronicznych da HTTP. Moesz
przykadowo podj decyzj, e zdarzenie onMouseOver wybranego obrazka
bdzie skutkowa wysaniem dania do serwera i pobraniem informacji na
temat tego obrazu. Innym przykadem moe by zdarzenie onClick przycisku,
ktre generowa bdzie danie serwera pobierajce informacje na temat tego,
jak wypeni pola formularza.
W rozdziale 4., Programowanie po stronie klienta przy uyciu JavaScript,
przekonae si, jak JavaScript moe by wykorzystany do wykonania instrukcji poczonych z takimi zdarzeniami, poprzez wykorzystanie procedur obsugi
zdarze. W swojej aplikacji Ajax metody takie odpowiedzialne bd za zapocztkowanie asynchronicznych da HTTP poprzez wykorzystanie obiektu
XMLHTTPRequest.
Majc gotowe dania, musisz napisa procedury monitorujce postp tych da,
reagujce na otrzymanie sygnau z serwera, e danie zostao pomylnie zakoczone.
W kocu, po otrzymaniu powiadomienia, e serwer zakoczy swoje zadania,
potrzebujesz procedury pobierajcej zwrcone informacje z serwera, aby zastosowa je w aplikacji. Moesz przykadowo zechcie wykorzysta nowo
zwrcone dane do zmiany zawartoci tekstu strony, wypenienia pl formularza
lub otwarcia wyskakujcego okienka z informacj.

94

Cz II Wprowadzenie do technologii Ajax

Rysunek 7.5 prezentuje diagram przepywu dla tego procesu.

Rysunek 7.5. Diagram prezentujcy wspprac komponentw aplikacji Ajax

W rozdziale 11., Nasza pierwsza aplikacja Ajax, wykorzystamy wieo nabyt


wiedz do zbudowania kompletnej aplikacji Ajax.

Podsumowanie
W rozdziale tym opisalimy uomnoci tradycyjnego interfejsu internetowego,
wskazujc poszczeglne problemy, ktre chcemy rozwiza. Zaprezentowalimy
rne bloki budulcowe aplikacji Ajax oraz omwilimy, jak one wsppracuj.
W nastpnych rozdziaach czci II przyjrzymy si tym komponentom dokadniej,
wykorzystujc je do zbudowania kompletnej aplikacji Ajax.

You might also like