zoukankan      html  css  js  c++  java
  • 308 Ajax状态码,获取服务器端的响应的另一种方式onreadystatechange ,与onload的区别

    xhr.readyState 为4, 只能说明接收完了服务器端的响应数据,但是服务器端可能响应了一个错误的数据,所以继续判断,http状态码xhr.status是200,才能说明此次请求是成功的
    
    if (xhr.readyState === 4 && xhr.status === 200) {
        alert(xhr.responseText);
    }
    


    // 【MDN的解释 --> load:XMLHttpRequest请求成功完成时触发,也可以使用 onload 属性.】


    06-获取服务器端响应数据的另一种方式.html

    <!DOCTYPE html>
    <html lang="en">
    
    <head>
      <meta charset="UTF-8">
      <title>Document</title>
    </head>
    
    <body>
      <script type="text/javascript">
        var xhr = new XMLHttpRequest();
        // 0 已经创建了ajax对象 但是还没有对ajax对象进行配置
        console.log(xhr.readyState);
        xhr.open('get', 'http://localhost:3000/readystate');
        // 1 已经对ajax对象进行配置 但是还没有发送请求
        console.log(xhr.readyState);
    
        // 当ajax状态码发生变化的时候出发
        xhr.onreadystatechange = function () {
          // 2 请求已经发送了
          // 3 已经接收到服务器端的部分数据了
          // 4 服务器端的响应数据已经接收完成
          console.log(xhr.readyState);
          // 对ajax状态码进行判断,如果状态码的值为4,就代表数据已经接收完成了 == 响应已经完成,可以获取并使用服务器的响应的数据了
          if (xhr.readyState == 4) {
            console.log(xhr.responseText);
          }
        }
    
        xhr.send();
    
      </script>
    </body>
    
    </html>
    
  • 相关阅读:
    64位机配置iis 运行asp.net 程序(转载)
    病狗问题
    如何配置sqlcachedependence
    操作应用程序池
    自定义事件
    以下事情没做好决不能给客户演示
    判断用户ip是否在指定的ip段内
    silverlight4学习中解决的问题
    日历JS代码
    自己写的代码生成器ltscode2.0
  • 原文地址:https://www.cnblogs.com/jianjie/p/12343027.html
Copyright © 2011-2022 走看看