同步和异步请求

同步和异步请求

XMLHttpRequest支持同步和异步通信。但是,一般来说,由于性能原因,异步请求应优先于同步请求。

同步请求阻止代码的执行,这会导致屏幕上出现“冻结”和无响应的用户体验。

异步请求

如果你在扩展中使用XMLHttpRequest。则你应该使用异步模式的请求。使用异步模式的话,当数据完全请求回来以后,会执行一个指定的回调函数,在执行请求的同时浏览器会正常的执行其他事务的处理。

同步请求

同步XHR通常会导致网络挂起。但开发人员通常不会注意到这个问题,因为在网络状况不佳或服务器响应速度慢的情况下,挂起只会显示同步XHR现在处于启用状态。建议开发人员远离这个API。

同步XHR不允许所有新的XHR功能(如timeout或abort)。这样做会调用InvalidAccessError。