AJAX:为什么我的http.readystate只返回4?

时间:2018-08-05 09:40:54

标签: javascript json ajax

我已经设置了一个文件夹来使用AJAX。我有一个虚拟的json文件:

{
    "tweets": [
        {
          "content": "hello"  
        },
        {
          "content": "world"  
        }
    ]
}

我遇到的问题是,当我console.log http对象时,我得到的readystate总是为“ 4”。但是,我相信我应该获得不同的准备状态。这使我认为我的代码是错误的。

我正在YouTube上观看此视频:https://www.youtube.com/watch?v=h0ZUpPiV1ac&index=2&list=PL4cUxeGkcC9jAhrjtZ9U93UMIhnCc44MH

有人可以解释为什么我似乎无法获得不同的就绪状态吗?

window.onload = function() {


    var http = new XMLHttpRequest();


    http.onreadystatechange = function() {
        console.log(http);
    }

    http.open('GET', 'data/tweets.json', true);
    http.send();

}

2 个答案:

答案 0 :(得分:0)

控制台将显示什么,您确定它只有4个吗?有5种状态-4种是最终状态;良好的联系几乎使前4个瞬间发生。

  

0请求未初始化

     

1请求已设置

     

2请求已发送

     

3请求正在处理中

     

4请求已完成

答案 1 :(得分:0)

console.log(http.readyState);

您可以尝试上面的代码,它起作用。readState在2,3,4中有所不同。