如果您的XMLHttpRequest
实例已超时或已中止,但您在onTimeout事件期间没有做任何事情,例如,我们如何才能看到XMLHttpRequest实例的状态?
例如,如果请求返回404,则可以在请求完成后很长时间内在status
属性中看到此内容。
但是超时似乎并没有留下任何东西。超时readyState
已完成',并且没有response
- 但无法知道为什么没有响应(超时,连接问题,中止等)。
上下文
我正在使用Backbone
。它使用XMLHttpRequest
中的jQuery
。中止/超时收到的errorText / exception不会由Backbone
显示给应用程序逻辑,而只显示XHR
实例本身。
因此需要直接从XHR
查找此信息而不附加onTimeout
事件处理程序等等。
看起来解决方案可能是调整它附加超时事件的方式,或者冒出错误。
答案 0 :(得分:0)
在进一步检查时,虽然似乎没有任何相关文档,但textStatus
上有一个jqXHR
属性,该属性已设置并可在事件发生后访问触发。我会用它。
如果你不使用jQuery和onTimeout甚至已经通过了,它没有任何帮助。感觉可以添加额外的readyState选项以反映超时状态。