Skillnad mellan synkron och asynkron i Ajax

Som standard är $ .ajax-förfrågan i jQuery inställd på asynkron. Det variabla namnet är asynk och värdet är satt till true. Detta gav mig lite förvirring när jag först lärde mig det, så låt oss gå över det.

Asynkron vs Synkron

Standardinställningen i jQuery. Enligt min erfarenhet bör Asynkron nästan alltid göra tricket. Det finns också 2 situationer som inte ens tillåter ett synkront samtal.

  • Korsdomänförfrågningar. Om jag gör en ajaxförfrågan från techjunkie.com till en fil på whereever.com (en helt annan domän), skulle det vara en begäran om tvärdomän.
  • jsonp - Om du letar efter att hämta JSON-dataöverdomen är JSONP det du söker.

När ska du använda synkron

Du bör först vara medveten om att inställningen async till false fryser din webbläsare. Det låser det helt. Inte bara din sida, utan varje sida som användaren kan ha öppet. Om din server till exempel saktar ner mellanförfrågan har du avaktiverat webbläsaren effektivt tills din server har en chans att hämta och överföra de nödvändiga uppgifterna.

I stället för att riskera det med ett synkront samtal, ange bara en återuppringningsfunktion efter framgång eller fel. Du kommer till samma slutpunkt utan att eventuellt förstöra användarens surfupplevelse. Kort sagt, använd inte ett synkront samtal. Dess dåliga för din ansökan och UX.

Se Även