По подразбиране заявката $ .ajax в jQuery е зададена на асинхронна. Името на променливата е async и стойността е зададена на true. Това ми създаде малко объркване и при първото научаване за него, така че нека да го разгледаме.
Асинхронен срещу синхронен
Настройката по подразбиране в jQuery. Според моя опит, Асинхронен почти винаги трябва да се справи. Има и две ситуации, по-специално които дори не позволяват синхронно повикване.
- Кръстосани заявки за домейни. Ако правя заявка на ajax от techjunkie.com до файл на whereever.com (напълно различен домейн), това ще е искане за кръстосан домейн.
- jsonp - Ако търсите да извлечете JSON данни между домейни, JSONP е това, което търсите.
Кога да използвате Synchronous
Първо трябва да сте наясно, че настройката на асинхронизирането на фалшиво замръзва браузъра ви. Заключва го напълно. Не само вашата страница, но всяка страница, която потребителят може да има отворена. Например, ако вашият сървър забави средната заявка, вие сте деактивирали браузъра им, докато сървърът ви има шанс да навакса и предаде необходимите данни.
Вместо да рискувате със синхронно повикване, просто посочете функция за обратно извикване при успех или грешка. Можете да стигнете до същата крайна точка, без евентуално да разрушите опита на сърфиране на потребителя. Накратко, не използвайте синхронно повикване. Това е лошо за вашето приложение и UX.
