弃用同步XMLHttpRequest

时间:2018-01-15 04:49:41

标签: javascript html xmlhttprequest

我看到这个错误:“[Deprecation]主要线程上的同步XMLHttpRequest因其对最终用户体验的不利影响而被弃用。有关更多帮助,请查看https://xhr.spec.whatwg.org/。”,代码如下:

var request;
if(window.XMLHttpRequest){
    request = new XMLHttpRequest();
}else{
    request = new ActiveXObject("Microsoft.XMLHTTP");
}
request.open('GET', 'http://www.mywebsite.com', false);
request.send();

我应该更换说明,因为它们已被弃用?

2 个答案:

答案 0 :(得分:2)

你只需要改变

request.open('GET', 'http://www.mywebsite.com', false);

request.open('GET', 'http://www.mywebsite.com', true);

答案 1 :(得分:1)

request.open('GET', 'http://www.mywebsite.com', false)

这意味着您正在创建对Web服务的同步调用。所以不要期待任何回音。

因此,要继续上述方法,请确保正文也为空。

request.send(null);

if (request.status === 200) {
  console.log(request.responseText);
}

null参数表示GET请求不需要正文内容。 因此线程不会被阻止。