去掉同步 XHR

请注意!XMLHttpRequest2 规范最近发生了更改,禁止在发生以下情况时发送同步请求: 已设置 XMLHttpRequest.responseType。此次变更背后的理念是 尽可能减少进一步使用同步 xhr。

例如,以下代码现在会在INVALID_ACCESS_ERR Chrome 和 FF 的开发者渠道版本:

var xhr = new XMLHttpRequest();
xhr.responseType = 'arraybuffer';
xhr.open('GET', '/', false); // sync request
xhr.send();

请参阅 WebKit 错误Mozilla Bug

同步 XHR 的弊端有很多,但 MSDN 的博文“为什么应该异步使用 XMLHttpRequest” 能够很好地说明问题

这对网络来说通常是一个很大的变化, 中断一些依赖于同步行为的现有应用。请查看 并尽快进行更新,以使用异步请求。