![]() |
Pe HaiSaRadem.ro vei gasi bancuri, glume, imagini, video, fun, bancuri online, bancuri tari, imagini haioase, videoclipuri haioase, distractie online. Nu ne crede pe cuvant, intra pe HaiSaRadem.ro ca sa te convingi. |
Deviza echipei:
Design CTT pentru blogspot.com
Swing GUI pentru cautarea de conversatii
Interfata web pentru highligh de text
Interfata blogger modelata cu arbori CTT
Analiza comunitatii HI5 si afisarea grafica...
Web 2.0...3.0... spre ce ne indreptam...?
XSLT - Ce...? De ce...? Cum...?
Sfaturi pentru integrarea JSON cu AJAX
Web Semantic - concepte de baza
CSS ... sau big bang-ul din web!
AJAX, echipa de fotbal si tehnologie web!
Top 10 interfete interactive
Interfete interactive
2009 Information Technologies impacts
What is design?
Prezentare Google in Poli.html
De ce nu apare situl pe trafic.ro?
What is GeoJson ???
A "Sexy++" interface ... or not
python + xml + hi5 - combinatia ideala...
Open Social-un trend in crestere pentru...
Raspunsuri la mesajele venite pe adresa...
In primul meu articol am prezentat AJAX - o tehnologie care permite comunicarea asincrona intre browser si server. Transferul de informatie, am spus atunci ca se poate face in cel mai frecvent caz prin XML dar si prin alte metode. Colega mea Delia a publicat de curand un articol in care prezenta un nou format de reprezentare a datelor transferate intre server si browser si anume JSON. Astazi vom invata sa integram JSON cu AJAX, vom deosebi situatiile in care se recomanda JSON in loc de XML si in final voi prezenta cateva lucruri de securitate pe care e bine sa le cunoasteti.
Pentru cei care nu au aflat inca sau n-au citit articolul Deliei, JSON este o prescurtare de la JavaScript Object Notation si este asadar un format utilizat pentru transferul de informatii. Este un format text, usor de citit de catre oameni si poate reprezenta structuri de date simple si colectii numite in mod generic obiecte. Principala utilizare a lui JSON este transmiterea datelor structurate peste internet intr-un proces numit serializare. JSON se regaseste de obicei in aplicatiile web dezvoltate cu AJAX si serveste ca o alternativa la XML. JSON este un subset al limbajului de programare JavaScript si se utilizeaza in mod frecvent cu aceasta tehnologie dar poate fi considerat si un format de reprezentare a informatiei independent de limbaj. Astazi exista librarii pentru interpretare si generare de date in format JSON pentru un numar mare de limbaje de programare.
Acum sa trecem la fapte: vom integra AJAX cu JSON. Scenariul este simplu, browser-ul clientului va face un request catre un server iar acest server va raspunde cu un obiect reprezentat in format JSON. Aceasta reprezentare text va ajunge in mod asincron la client, iar cu ajutorul functiei eval() se va deserializa obiectul transmis de server. Astfel avem obiectul dorit si vom putea obtine proprietatile sale prin acces direct.
Codul JavaScript urmator arata cum putem folosi AJAX pentru a obtine un obiect in format JSON de la server. Partea de programare a serverului nu face obiectul acestui articol, dar se presupune ca serverul va raspunde cu un string formatat dupa tiparul JSON.
var the_object; var http_request = new XMLHttpRequest(); http_request.open( "GET", url, true ); http_request.send(null); http_request.onreadystatechange = function () { if ( http_request.readyState == 4 ) { if ( http_request.status == 200 ) { the_object =
eval( "(" + http_request.responseText + ")" ); } else { alert(
"There was a problem with the URL." ); } http_request = null; } };
Acum voi prezenta o comparatie intre JSON si XML din punct de vedere al integrarii cu AJAX. Desigur exista multe pareri despre folosirea acestor tehnologii, dar am reusit sa identific cateva idei esentiale pe care trebuie sa le cunoasteti.
De ce sa folosim JSON cu AJAX?Atunci cand va hotarati sa reprezentati datele transferate de AJAX in format JSON este bine sa aveti in vedere si problemele de securitate pe care aceasta tehnologie le poate genera. Se cunoaste ca o programare defectuasa si neluarea de masuri pasive de securitate va poate supune site-ul unor atacuri nedorite. Este posibil ca serverul de la care va asteptati sa primiti date in format JSON sa fie compromis de un atac de tip hacking si sa transmita cod JavaScript rau intentionat (aceasta metoda se numeste code injection). Astfel aceste instructiuni malitioase vor fi executate de functia eval() in browserul clientului. Pentru a evita o astfel de situatie, se recomanda folosirea unui parser JSON care va prelucra doar codul JSON din textul primit si va ignora intructiunile JavaScript care ar putea afecta site-ul dumneavoastra.
Cateva link-uri pentru cei care care vor sa aprofundeze: Georgian Micsa, 1 Decembrie 2008