160 likes | 262 Views
Remote programming. Dinamini ų web aplikacijų kūrimas. Vaidas Žilionis. Įžangai. Apibendrintai tai reikalingos papildomos informacijos gavimas neperkraunant internetinės naršyklės 2005m. Vasario mėnesį tokiu principu veikiančias sistemas Jesse James Garrett pavadino AJAX. Kas tai AJAX.
E N D
Remote programming Dinaminių web aplikacijų kūrimas Vaidas Žilionis
Įžangai... • Apibendrintai tai reikalingos papildomos informacijos gavimas neperkraunant internetinės naršyklės • 2005m. Vasario mėnesį tokiu principu veikiančias sistemas Jesse James Garrett pavadino AJAX
Kas tai AJAX • Tai nėra technologinis variklis • AJAX – technologinis rinkinys leidžiantis įgyvendinti naujus sprendimus • AJAX šifruojasi Asynchronous JavaScript and XML
AJAX susideda • XHTML ar HTML su CSS • Javascript ir DOM’as • XML, XSL ir XMLHttpRequest
Žiūrint plačiau... • AJAX supratimą galima išplėsti • Duomenys gali būti gaunami ne vien asinhroniškai, bet ir sinhroniškai • Nebūtinai gali būti panaudotas XmlHttpRequest, bet ir XML-RPC, Data binding...
Privalumai • Dinaminis pasikrovimas neblaško lankytojo dėmesio • Greičiau gaunami duomenys • Sumažinamas srauto kiekis • Sumažinamas vartotojo veiksmų skaičius atlikti operacijai • Webinės aplikacijos tampa panašesnės į vartotojui įprastas sisteminis aplikacijas
Trūkumai • Nesaikingai naudojančioje web aplikacijoje, naršytojui tenka atsisakyti mygtukų „Back“, „Forward“, „Refresh“ įprastinio naudojimo — AJAX puslapis nėra valdomas standartinėmis priemonėmis. • AJAX neveikia senesnėse naršyklėse, alternatyviose (grynojo teksto, balsu skaitančiose ar telefoninėse) naršyklėse. • Įgyvendinimas nėra elementarus — reikia pakankamai žinių iš visų paminėtų technologijų skirtingose naršyklėse. • Paieškos sistemos neindeksuoja (a)sinchroniškai užkrautos informacijos
Trupinėlis kodo var xmlhttp=false; /*@cc_on @*/ /*@if (@_jscript_version >= 5) try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } catch (E) { xmlhttp = false; } } @end @*/ if (!xmlhttp && typeof XMLHttpRequest!='undefined') { xmlhttp = new XMLHttpRequest(); } xmlhttp.open("GET", "test.txt",true); xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState==4) { alert(xmlhttp.responseText) // su rezultatu darome ka norime } } xmlhttp.send(null) // Galima nusiųsti ir duomenis
Panaudojimai (JSPAN) • PHP pusė • JavaScript pusė
Nuorodos • http://jibbering.com/2002/4/httprequest.html • http://www.adaptivepath.com/publications/essays/archives/000385.php • http://www.modernmethod.com/sajax/ • http://www.fiftyfoureleven.com/resources/programming/xmlhttprequest • http://jpspan.sourceforge.net/wiki/doku.php • http://msdn.microsoft.com/workshop/author/databind/data_binding.asp • http://www.google.com
Ačiū Klausimai?