如何通过Javascript获得URL响应

时间:2018-11-30 04:08:12

标签: javascript ajax

我正在尝试使用javascript通过URL获取响应,但是readystate ab = nd状态分别没有达到4和200。直接获取Url后,它会正常工作,而不是通过代码获取。

!<DOCTYPE html>
<html>
  <body>
  <head>
    <script>    
      var Http = new XMLHttpRequest();
      document.write("1");
      var url='http://10.64.10.222:5000/';
      document.write("2");
      Http.open("GET",url);
      document.write("3");
      Http.send();
      document.write("4");
      document.write(Http.readyState);
      document.write(Http.status);
      Http.onreadystatechange = function(){

        if(Http.readyState == 4 && Http.status == 200 ){
          document.write("6");
          document.write(Http.responseText);
        }
        document.write("5");
      }  
    </script>
  </head>
  </body>
</html>

1 个答案:

答案 0 :(得分:0)

为什么使用传统的和旧的XMLHttpRequest,请使用最新的Fetch API。取自MDN

  

Fetch API提供了用于获取资源(包括   跨网络)。曾经使用过的任何人似乎都很熟悉   XMLHttpRequest,但它提供了更强大,更灵活的功能集。

演示代码段如下所示,有许多选项可将标题和状态代码读取为wll。

fetch('http://10.64.10.222:5000/')
  .then(function(response) {
    return response.json();
  })
  .then(function(myJson) {
    console.log(JSON.stringify(myJson));
  });