Wstęp do AJAX

styczeń 15, 2007 – 9:39 po południu

Definicja AJAX-a
AJAX - czyli - ang. Asynchronous JavaScript and XML.
AJAX nie jest technologią. Jest to zbiór technologii, które tworzą ze sobą użyteczną całość.
W skład AJAX-a wchodzą:

  • XHTML i CSS - prezentacja danych;
  • Document Object Model - dynamiczne wyświetlanie danych i reakcja na działania użytkownika;
  • XML i XSLT - wymiana danych;
  • XMLHttpRequest - asynchroniczne przesyłanie danych;
  • JavaScript - obsługa, scalenie tego wszystkiego, jest tak naprawdę odpowiedzialny za wszystko.

Klasyczny schemat działanie strony to: użytkownik klika na link, przesyłając pewne dane do serwera, następnie przetwarza on dane i zwraca jako odpowiedź całą stronę do przeglądarki.

Jest to prosty model, łatwy w budowie, lecz nie koniecznie dobry dla odwiedzających stronę, ponieważ strona za każdym razem musi się załadować w całości, nie wnikając już w cache-owanie przez przeglądarkę i trochę uogólniając. Jednak jest to znaczna ilość danych, które się powtarzają za każdym razem. Operacja przesyłu danych trwa kilkanaście sekund, użytkownik w tym czasie musi czekać i nie może nic robić. Jeżeli ten proces trwa zbyt długo, strona staje się coraz bardziej mniej interesująca dla odwiedzającego, zniechęca to do przeglądania dalszej treści witryny.

Schemat klasyczny

W aplikacjach wykorzystujących Ajax, wyeliminowano problem z powtarzającym się ładowaniem strony przez zastosowanie pośrednika pomiędzy użytkownikiem a serwerem, czyli AJAX-a, a dokładnie XMLHttpRequest.

Tylko za pierwszym razem strona jest w pełni ładowana, czyli wygląda to podobnie jak przy standardowym modelu, jedna różnica jest wewnątrz. Zostaje załadowany silnik AJAX-a do komunikacji z serwerem. Nad wszystkim czuwa JavaScript, w tym języku muszą być napisane funkcje do wysyłania i przetwarzania otrzymanych danych, ogólnie mówiąc do komunikacji. Zapytanie do serwera odbywa się asynchronicznie, co oznacza, że użytkownik może bez przerwy korzystać z innych rzeczy umieszczonych na stronie. Komunikacja odbywa się w “tle”, nie przeszkadzając odwiedzającemu na dalsze korzystanie ze strony. Nigdy nie będzie takiej sytuacji gdy użytkownik będzie widział tylko białą, pustą stronę, ponieważ za każdym razem można poinformować o tym że następuje ładowanie danych z serwera.

Schemat z wykorzystaniem Ajax-a

AJAX można wykorzystać np. do walidacji danych z formularza, edytowania “na żywo” tekstu, itp. Wtedy to użytkownik decyduje, co chce wykonać. Jeśli jednak będą potrzebne jakieś dodatkowe dane z serwera, AJAX sam może, bez ingerencji odwiedzającego, wykonać zapytanie do serwera, pozwala to np. losować i zmieniać, co kilka sekund, tekst dnia, czy pobrać jakiś dodatkowy fragment kodu JavaScript.

Pages: 1 2 3

Post a Comment