readyState是否有用,不同于“4”。 (完成)在XHR.onreadystatechange回调中?

您是否曾使用过XHR对象来截取onreadystatechange,其readyState不同于“4”(完整)? 我很想知道你是否曾经触发过具有可能不同值的函数。 我无法想象真正使用其他国家。他们做某事有点有用吗? 可以提供一些实际的例子吗? 我在谈论这些: 0:请求未初始化 1:建立服务器连接 2:收到请求 3:处理请求 4:请求完成并且响应准备就绪     
已邀请:
我在内部网上使用它,我已经开发用于通知目的。 通过拦截状态3,我可以通知用户请求已经开始。 我也用它来计算请求传输时间。我显示状态3和4之间经过的时间。 由于我使用MooTools,我扩展了Request类以触发onStateChange事件:
var EarlyRequest = new Class({Extends: Request,
 onStateChange: function() {
  this.fireEvent("onStateChange", [this.xhr.readyState]);
  this.parent();
 }
});
另外要注意。您发布的州(来自w3cschools)的定义具有误导性,这些对我来说更清楚(来自http://www.w3.org/TR/XMLHttpRequest/#states): UNSENT(数值0) 该对象已经构建。 打开(数值1) 已成功调用open()方法。在此状态期间,可以使用setRequestHeader()设置请求标头,并且可以使用send()方法进行请求。 HEADERS_RECEIVED(数值2) 已遵循所有重定向(如果有)并且已收到最终响应的所有HTTP标头。现在可以使用该对象的几个响应成员。 加载(数值3) 正在接收响应实体。 完成(数值4) 传输过程中数据传输已完成或出现问题(例如无限重定向)。     

要回复问题请先登录注册