困惑—我的XMLHttpRequest的readyState为0,状态为200
-
03-07-2019 - |
题
我在firebug中设置了断点并正在检查我的xhr对象。 readyState为0,状态为200.我的理解是,如果状态为200,请求至少应该开始,而就绪状态应该至少为1.任何人都可以解释发生了什么事情吗?
我正在使用jquery的$ .ajax来创建xhr对象,但我认为这不会影响xhr的readystate和status。
解决方案
当readyState为4时,请求完成,而不是当状态为200时。
其他提示
w3c 定义 readyState
是xmlhttprequest进度的渐进式指示。它按照从0-> 4(未初始化,打开,发送,接收,加载)的顺序转换,并且仅在加载时才准备好读取内容。这是属性的要点以及监视 onreadystatechange
事件的原因,而不是作为响应头的状态。
通过相同的规范 status
应该在不可用时(在接收或加载时)引发异常,但我想这是为了易于使用而被实现所蔑视。
不隶属于 StackOverflow