프로그래밍 언어/jQuery, ajax

jQuery를 사용하여 Ajax 요청 중단 하는 방법

Rateye 2021. 10. 12. 10:41
728x90
반응형
질문 : jQuery를 사용하여 Ajax 요청 중단

jQuery를 사용하여 아직 응답을받지 못한 Ajax 요청을 취소 / 중단 할 수 있습니까?

답변

대부분의 jQuery Ajax 메서드는 XMLHttpRequest (또는 이에 상응하는) 객체를 반환하므로 abort() 사용할 수 있습니다.

설명서를 참조하십시오.

  • 중단 방법 ( MSDN ). 현재 HTTP 요청을 취소합니다.
  • abort () ( MDN ). 요청이 이미 전송 된 경우이 메서드는 요청을 중단합니다.
var xhr = $.ajax({
    type: "POST",
    url: "some.php",
    data: "name=John&location=Boston",
    success: function(msg){
       alert( "Data Saved: " + msg );
    }
});

//kill the request
xhr.abort()

업데이트 : jQuery 1.5에서 반환 된 객체는 jqXHR이라는 네이티브 XMLHttpRequest 객체의 래퍼입니다. 이 개체는 모든 기본 속성 및 메서드를 노출하는 것처럼 보이므로 위의 예제는 계속 작동합니다. jqXHR 객체 (jQuery API 문서)를 참조하십시오.

업데이트 2 : jQuery 3에서 ajax 메소드는 이제 abort와 같은 추가 메소드로 promise를 반환하므로 반환되는 객체가 더 이상 xhr 여기에서 3.0 블로그를 참조하십시오.

업데이트 3 : xhr.abort() 여전히 jQuery 3.x에서 작동합니다. 업데이트 2 가 정확하다고 가정하지 마십시오. jQuery Github 저장소에 대한 자세한 정보 .

출처 : https://stackoverflow.com/questions/446594/abort-ajax-requests-using-jquery
728x90
반응형