在XMLHttpRequest中,错误标志变量在哪里?

Seb*_*rez 5 javascript w3c xmlhttprequest

XMLHttpRequest Spec中它说:

DONE状态具有相关的错误标志,指示某种类型的网络错误或堕胎.它可以是true或false,初始值为false.

还在"打开"状态下说出类似"send()标志"的内容.

它在规范中说,但在IDL中没有,当我创建一个新的XMLHttpRequest时,我找不到那些"标志".

那些布尔变量在哪里?

Buh*_*ndi 5

XMLHttpRequest.readyState物业是您正在寻找的.

根据您给出的规范,您将看到所有这些"布尔"标志实际上是数值.

  • UNSENT(数字0)
  • 打开(数字1)
  • HEADERS_RECEIVED(数字2)
  • 加载(数字3)
  • 完成(数字4)

这些值是XMLHttpRequest.onreadystatechange事件处理程序的结果.基本上,为了获得这些价值,做一些这样的效果.

//In Javascript
var request = new XMLHttpRequest();
if (request) {
  request.onreadystatechange = function() { 
    if (request.readyState == 4) { //Numeric 4 means DONE

        }
   };

request.open("GET", URL + variables, true); //(true means asynchronous call, false otherwise)
request.send(""); //The function that executes sends your request to server using the XMLHttpRequest.
}
Run Code Online (Sandbox Code Playgroud)

请记住,总是调用方法之前写入onreadystatechange事件(如果您决定进行异步调用).此外,异步调用将调用事件侦听器,因此实现它始终至关重要.XMLHttpRequest.send()XMLHttpRequest.onreadystatechange

关于维基百科的更多信息


Seb*_*rez 3

写信给 webapps 电子邮件列表询问这些标志,他们的回复如下:

作者可以使用的所有内容都在 Web IDL 片段中表达。除此之外的所有内容都代表某种数据实现需要以某种方式保留以正确实现规范。

(这是我的疑问)