Anonim

כברירת מחדל, בקשת $ .ajax ב- jQuery מוגדרת לאסינכרונית. שם המשתנה הוא אסינכרוני והערך מוגדר לאמיתי. זה עורר בי מעט בלבול גם כשלמדתי עליו לראשונה, אז בואו נעבור על זה.

אסינכרוני לעומת סינכרוני

הגדרת ברירת המחדל ב- jQuery. מניסיוני, אסינכרוני כמעט תמיד צריך לעשות את העבודה. ישנם גם שני מצבים בפרט שאינם מאפשרים אפילו שיחה סינכרונית.

  • חוצה בקשות חוצות דומיינים. אם אני מבקש בקשת ajax מ- techjunkie.com לקובץ בכל מקום (שם תחום אחר לחלוטין), זו תהיה בקשה חוצה תחומים.
  • jsonp - אם אתה מחפש לאחזר נתונים בין תחומי JSON, JSONP הוא מה שאתה מחפש.

מתי להשתמש בסינכרוני

ראשית עליכם להיות מודעים לכך שהגדרת אסינכרון לשווא מקפיאה את הדפדפן. הוא נועל אותו לחלוטין. לא רק הדף שלך, אלא כל עמוד שהמשתמש אולי פתוח. לדוגמה, אם השרת שלך מאט את אמצע הבקשה, השבתת את הדפדפן שלהם באופן יעיל עד שלשרת שלך יש סיכוי להתעדכן ולהעביר את הנתונים הדרושים.

במקום להסתכן באמצעות שיחה סינכרונית, פשוט ציין פונקציית התקשרות חוזרת על הצלחה או שגיאה. אתה מגיע לאותה נקודת קצה מבלי שאפשר להרוס את חווית הגלישה של המשתמש. בקיצור, אל תשתמש בשיחה סינכרונית. זה רע ליישום ול- UX.

ההבדל בין סינכרוני לאסינכרוני באייאקס