使用XMLHttpRequest 实现http 终止请求和超时

可以通过调用XMLHttpRequest对象的abort方法来取消正在进行的http请求
abort方法在所有的XMLHttpRequest版本和XHR2中可用,调用abort方法在这个对象上触发abort事件


//终止请求和超时
function timeedGetText(url,timeout,callback){
      var xhr = new XMLHttpRequest();
      var timedout = false;
      var timer = setTimeout(function(){
               timedout = true;
               xhr.abort();
      },timeout);
      xhr.onreadystatechange = function(){
         if(xhr.readyState !=4){ return;}
         if(timedout){ return;}
         clearTimeout(timer);
         if(xhr.status === 200){
           callback(xhr.responseText);
         }
      };
}

你可能感兴趣的:(javascript)