לתשומת ליבך! מפרט XMLHttpRequest2 השתנה לאחרונה כדי לאסור שליחת בקשה סינכרונית כשהערך של XMLHttpRequest.responseType
מוגדר. הרעיון מאחורי השינוי הוא לעזור לצמצם את השימוש הנוסף ב-xhrs סינכרוניים ככל האפשר.
לדוגמה, הקוד הבא יגרום להודעת השגיאה INVALID_ACCESS_ERR
בגרסאות ה-build של Chrome ו-FF בערוץ הפיתוח:
var xhr = new XMLHttpRequest();
xhr.responseType = 'arraybuffer';
xhr.open('GET', '/', false); // sync request
xhr.send();
ראו באג ב-WebKit, באג ב-Mozilla
קריאות XHR סינכרוניות הן לא טובות מכמה סיבות, אבל בפוסט בבלוג של MSDN, Why You Should Use XMLHttpRequest Asynchronously, מוסבר בצורה מעולה על הבעיות.
זהו שינוי מצוין באינטרנט באופן כללי, אבל הוא עלול לגרום לתקלות באפליקציות קיימות מסוימות שהסתמכו על התנהגות סינכרונית. עליך לבדוק את קוד ה-XHR ולעדכן אותו בהקדם האפשרי כדי להשתמש בבקשות אסינכררוניות.