如何強制停止http請求


http請求很多時候會受到網絡阻塞、重連等原因導致響應很慢,如果此時做了一些操作,但過幾秒后又響應了之前的請求,就會造成很多問題,此時我們可以使用abort()方法強制停止http請求:

let ajaxGet = $.get('URL',{id:1}, function (data){
  …
});
ajaxGet.abort();
 

1. $.get返回的數據類型是XMLHttpRequest,請參考手冊。($.post、$.ajax、$.getJSON、$.getScript也同樣);

2. XMLHttpRequest對象有abort()方法;

 

注意:abort()后,ajax請求立即停止,但還是會執行后面的function()。如果想避免執行其中的操作,可以在function()開始位置加判斷:

let  ajaxGet = $.get(“URL”,{id:1}, function (data){
  if (data.length == 0)  return  true ;
  …
});
ajaxGet.abort();
 
 

防止重復請求:

let request;
if (request !=  null request.abort();
request = $.get(“URL”,{id:1}, function (){
   //do something
});
 
希望本文對你有所幫助!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM