5. Comunicació asíncrona Client-Servidor
En aquest apartat deixarem enrere les constants recàrregues de pàgina per endinsar-nos en l'AJAX (Asynchronous JavaScript and XML). Aprendrem com el navegador pot comunicar-se amb el servidor en segon pla, enviant i rebent dades de forma invisible sense interrompre l'experiència de l'usuari.
Què hi tractarem en detall?
-
El concepte d'Asincronia: Entendrem com funciona el fil d'execució de JavaScript i com podem demanar dades a un servidor sense bloquejar la interfície gràfica.
-
El format JSON: Dominarem l'estàndard universal actual per empaquetar i intercanviar informació entre el front-end i el back-end.
-
La Fetch API: Deixarem enrere l'històric i feixuc XMLHttpRequest per centrar-nos de ple en l'estàndard modern fetch(). Aprendrem a fer tota mena de peticions HTTP (GET, POST, PUT, DELETE).
-
Promeses i Async/Await: Descobrirem com llegir i escriure codi asíncron de manera neta i elegant, incloent-hi la captura i gestió d'errors de xarxa mitjançant blocs try/catch.
L'objectiu final és donar les eines per crear aplicacions web dinàmiques, fluides i professionals (com les Single Page Applications).
AJAX? Què és, quins avantatges ofereix, com treballa...
AJAX (acrònim d'Asynchronous JavaScript and XML) és una tècnica de desenvolupament web dissenyada...
Crear XMLHttpRequest
XMLHttpRequest (XHR) L'objecte XMLHttpRequest és el motor principal que fa possible la tecnologi...
Send request
Aquesta part és crucial, ja que és on realment s'inicia el procès perquè el navegador vagi a busc...
Status, methods i arquitectura REST
El servidor i el navegador es comuniquen utilitzant un llenguatge molt precís basat en el protoco...
EXEMPLE. Petició emprant XMLHttpRequest + Authentication Token
Aquest escenari ens permet veure com funciona una petició asíncrona en el món real. En moltes apl...
API Fetch
API Fetch és el present i el futur de les peticions web, les Fetch API són el vehicle d'última ge...
Exemple. Petició GET Fetch + Authentication Token
Aquest seria l'evolució de l'exemple anterior, aquest codi fa exactament el mateix (enviar un tok...
Exemple. Petició POST Fetch
És en les peticions POST (on hem d'enviar dades al servidor) on la Fetch API ens ajuda més i demo...
Exemple. Upload arxiu POST. Fetch vs XMLHttpRequest (progress)
Tal com hem dit anteriorment XMLHttpRequest (XHR) encara no ha mort i segueix sent insubstituïble...