Anonim

За замовчуванням запит $ .ajax у jQuery встановлений асинхронним. Ім'я змінної - асинхронізація, а значення встановлено в істинне. Це також дало мені трохи плутанини, коли я вперше дізнався про це, тож давайте перейдемо до цього питання.

Асинхронний проти синхронний

Установка за замовчуванням у jQuery. На мій досвід, Асинхронний майже завжди повинен робити трюк. Також є 2 ситуації, зокрема, які навіть не дозволяють синхронний дзвінок.

  • Перехресні доменні запити. Якщо я роблю запит на ajax від techjunkie.com до файлу на whereever.com (зовсім інший домен), це буде запит між доменами.
  • jsonp - Якщо ви хочете отримати пошук міждоменних даних JSON, JSONP - це те, що ви шукаєте.

Коли використовувати Synchronous

Спершу слід пам’ятати, що налаштування асинхронізації на помилкове заморожування вашого браузера. Це блокується, повністю. Не лише вашу сторінку, але й кожну сторінку, яку користувач може відкрити. Наприклад, якщо ваш сервер сповільнює середину запиту, ви фактично вимкнули його веб-переглядач, поки ваш сервер не зможе наздогнати та передати необхідні дані.

Замість того, щоб ризикувати за допомогою синхронного дзвінка, просто вкажіть функцію зворотного дзвінка щодо успіху чи помилки. Ви дістаєтесь до тієї ж кінцевої точки, що, можливо, не погубило досвід перегляду користувача. Якщо коротко, не використовуйте синхронний дзвінок. Це погано для вашої програми та UX.

Різниця між синхронним та асинхронним у аяксе