AJAX: Waarom asynchroon bijna altijd beter is

click fraud protection

AJAX, wat staat voor asynchroon JavaScript en XML, is een techniek waarmee webpagina's asynchroon kunnen worden bijgewerkt, wat betekent dat de browser niet de hele pagina opnieuw hoeft te laden wanneer slechts een klein beetje gegevens op de pagina is gewijzigd. AJAX geeft alleen de bijgewerkte informatie door aan en van de server.

Standaard webapplicaties verwerken interacties tussen webbezoekers en de server synchroon. Dit betekent dat het ene na het andere gebeurt; de server doet geen multitasking. Als u op een knop klikt, wordt het bericht naar de server verzonden en wordt het antwoord geretourneerd. U kunt geen interactie aangaan met andere pagina-elementen totdat het antwoord is ontvangen en de pagina is bijgewerkt.

Het is duidelijk dat dit soort vertraging de ervaring van een webbezoeker negatief kan beïnvloeden - vandaar AJAX.

Wat is AJAX?

AJAX is geen programmeertaal, maar een techniek die een client-side script (d.w.z. een script dat in de browser van een gebruiker wordt uitgevoerd) bevat dat communiceert met een webserver. Verder is de naam enigszins misleidend: hoewel een AJAX-toepassing XML kan gebruiken om gegevens te verzenden, zou het ook gewone tekst of JSON-tekst kunnen gebruiken. Maar over het algemeen gebruikt het een XMLHttpRequest-object in uw browser om gegevens op te vragen van de server en JavaScript om de gegevens weer te geven.

instagram viewer

AJAX: synchroon of asynchroon

AJAX heeft zowel synchroon als asynchroon toegang tot de server:

  • Synchroon, waarin het script stopt en wacht op de server om een ​​antwoord terug te sturen alvorens verder te gaan.
  • Asynchroon, waarin het script toestaat dat de pagina verder wordt verwerkt en het antwoord afhandelt als en wanneer het aankomt.

Uw verzoek wordt verwerkt synchroon lijkt op het opnieuw laden van de pagina, maar alleen de gevraagde informatie wordt gedownload in plaats van de hele pagina. Daarom is het gebruik van AJAX synchroon sneller dan helemaal niet - maar het vereist nog steeds dat uw bezoeker wacht tot de download plaatsvindt voordat verdere interactie met de pagina kan plaatsvinden. Mensen weten dat ze soms moeten wachten tot een pagina is geladen, maar de meeste mensen zijn niet gewend aan voortdurende, aanzienlijke vertragingen nadat ze op een site zijn.

Uw verzoek wordt verwerkt asynchroon vermijdt de vertraging terwijl het ophalen van de server plaatsvindt omdat uw bezoeker kan blijven communiceren met de webpagina; de gevraagde informatie wordt op de achtergrond verwerkt en het antwoord werkt de pagina bij zodra deze binnenkomt. Verder, zelfs als een reactie wordt vertraagd - bijvoorbeeld in het geval van zeer grote gegevens - realiseren sitebezoekers het misschien niet omdat ze elders op de pagina bezig zijn.

Daarom is de voorkeur om AJAX te gebruiken zoveel mogelijk asynchrone oproepen. Dit is de standaardinstelling in AJAX.

Waarom synchrone AJAX gebruiken?

Als asynchrone oproepen zo'n verbeterde gebruikerservaring bieden, waarom biedt AJAX dan een manier om synchrone oproepen te doen?

Hoewel asynchrone oproepen meestal de beste keuze zijn, zijn er zeldzame situaties waarin dit niet het geval is zinvol om uw bezoeker toe te staan ​​om met de webpagina te blijven communiceren tot een bepaald server-side proces is voltooid.

In veel van deze gevallen is het misschien beter om AJAX helemaal niet te gebruiken en in plaats daarvan gewoon de hele pagina opnieuw te laden. De synchrone optie in AJAX is er voor het kleine aantal situaties waarin u geen asynchrone oproep kunt gebruiken, maar het opnieuw laden van de hele pagina is niet nodig. Het is bijvoorbeeld mogelijk dat u sommige transactieverwerking moet verwerken waarbij de bestelling belangrijk is. Overweeg een geval waarin een webpagina een bevestigingspagina moet retourneren nadat de gebruiker op iets heeft geklikt. Voor deze taak moeten de aanvragen worden gesynchroniseerd.

instagram story viewer