LBweb Łukasz Bącik
Komentarze: 0

AJAX – dobrodziejstwo dynamicznych witryn

AJAX jest to technika tworzenia aplikacji internetowych, dzięki której dane możemy pobierać i wysyłać asynchronicznie („w tle”). Wiele witryn korzysta z tego dobrodziejstwa, w którym ładowanie danych odbywa się bez przeładowania całej strony. Podstawowymi elementami, które wchodzą w skład AJAXu są XMLHttpRequest, JavaScript oraz XML.

AJAX jest to technika tworzenia aplikacji internetowych, dzięki której dane możemy pobierać i wysyłać asynchronicznie („w tle”). Wiele witryn korzysta z tego dobrodziejstwa, w którym ładowanie danych odbywa się bez przeładowania całej strony. Podstawowymi elementami, które wchodzą w skład AJAXu są XMLHttpRequest, JavaScript oraz XML.

AJAX - dobrodziejstwo dynamicznych witryn

Powyższa grafika obrazuje poglądowo jak działa AJAX, czyli przeglądarka za pomocą np. JavaScript’u wysyła żądanie (request) z odpowiednimi parametrami do serwera w celu pobrania danych. Serwer zwraca żądane dane, w postaci odpowiedniej akcji w AJAX. Tymi akcjami są success() oraz error(). Wszystko oczywiście odbywa się asynchronicznie w tle, tak że użytkownik nie doświadcza przeładowania strony i otrzymuje gotowe dane.

Ograniczenia

Oczywiście, są, jednak wg mnie każde z nich da się obejść.

  • Blokowanie lub wyłączenie JavaScriptu w przeglądarce – w tym przypadku stosuje się technologie backendowe (np. PHP lub Python),
  • Roboty nie zaindeksują naszej treści – bzdura, obecnie roboty wyszukiwarek są na tyle mądre, że swobodnie poruszają się po dynamicznych witrynach,
  • Nie klikniemy przycisku „Wstecz” w przeglądarce – kolejna ściema. Z pomocą tutaj przychodzi AngularJS, dzięki któremu możemy stosować routing i manipulację adresami – to pozwala na przechodzenie wstecz i w przód.

Przykład wykorzystania AJAX

http://jsfiddle.net/lukaszbacik/2f761az7/embedded/

Jak widać dane zostały pobrane z testowego środowiska i wyświetlił się alert ze zwróconymi danymi.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *