AJAX
AJAX – interfejs do synchronicznych oraz asynchronicznych żądań HTTP
Standaryzacja implementacji obiektu XMLHttpRequest. Zapytania obsługuje się poprzez metodę globalną jQuery.post lub jQuery.get.
Właściwości żądania XHR.
XHR – XMLHttpRequest – obiekt języków skryptowych, do przesyłania żądań do serwera www poprzez protokół HTTP. Wykonywanie żądań po załadowaniu strony, na skutek interakcji użytkownika. Asynchronicznie wykonywane żądania odbywają się w tle dynamicznie zmieniając stronę. Treść odpowiedzi serwera najczęściej otrzymywana jest w formatach: XML, JSON, zwykły tekst.
Metody
- abort() – anuluje aktualne żądanie
- getAllResponseHeaders() – zwraca zestaw nagłówków HTTP jako łańcuch znaków
- getResponseHeader( headerName ) – zwraca wartość wskazanego nagłówka HTTP
- open( metoda, URL, async, userName, password ) lub open( metoda, URL ), wartości argumentów:
- metoda – „GET”, „POST”, „HEAD”, „PUT”, „DELETE”
- url – relatywny lub bezwzględny adres
- async – wskazanie czy żądanie ma być przetwarzane asynchronicznie,
- 1(true) – tak, skrypt przetważany dalej po wykonaniu metody send()
- 0(false) – nie, skrypt przetwarzany dalej po otrzymaniu odpowiedzi
- send(zawartość) – wysyła żądanie
- setRequestHeader( nazwaNagłówka, zawartośćNagłówka ) – odaje parę nagłówek/zawartość do żądań HTTP
Własności
- onreadystatechange – wskazuje referencje do funkcji wykonywanej przy każdej zmianie własności readyState
- responseText – zwraca dane odpowiedzi jako łańcuch tekstowy
- responseXML – zwraca dane odpowiedzi jako dane HML, obiekt dokumentu XML, który może być parsowany poprzez klasy i interfejsy W3C DOM
- status – zwraca numer statusu, kod odpowiedzi HTTP:
- 200 – Success, OK
- 301 – Moved permanently
- 302 – Moved temporarily
- 400 – Bad request
- 401 – Unauthorized
- 403 – Forbidden
- 404 – Not found
- 500 – Server error
- statusText – zwraca status jako łańcuch tekstowy („ok”, „not found”)
- readyState – wskazująca stan obiektu, wartości:
- 0 – zapytania niezainicjowane, nowe żądania / Request not initialized
- 1 – cel otwarty / Server connection stablished
- 2 – zapytanie wysłane / Request received
- 3 – odbieranie odpowiedzi / Processing request
- 4 – żądanie zakończone / Request finished and response is ready
żądanie
ajaxreq = new XMLHttpRequest();
otwarcie url – dzięki metodzie open()
ajaxreq.open(„GET”,”myfile”);
ajaxreq.open(„GET”,”search.php?query=Aga”); – wysłanie wartości Aga jako parametr query
wysłanie żądania – metoda send()
wysłanie poprzez metoda POST – dane stanowią argumenty dla send()
wysłanie poprzez metodę GET – można użyć wartości pustej – ajaxreq.send(null);
wykrywanie zdarzenia – odpowiedzi poprzez funkcję onreadystatechange
ajaxreq.onreadystatechange = myFunction;
obiekt żądanie ma właściwości:
- readyState – wskazująca stan przyjmującą wartości od 0 (nowe żądanie) do 4 (zakończone)
- statusText – tekstowy opis błędu
otrzymanie danych zwróconych z serwera
właściwość readyState = 4 i żądanie zostaje ukończone, otrzymujemy dane dzięki właściwością:
- responseText – odpowiedź w postaci tekstowej
- responseXML – obiekt XML
Hope this helps and happy coding :)
Zobacz jeszcze
jQuery
jQuery API dołączenie biblioteki: aby zawsze używać aktualnej wersji biblioteki z rodziny 11 najlepiej skorzystać z CDN google z pominięciem numeru aktualizacji wersji, google...