jQuery.ajaxPrefilter() > 개발자팁

개발자팁

개발과 관련된 유용한 정보를 공유하세요.
질문은 QA에서 해주시기 바랍니다.

jQuery.ajaxPrefilter() 정보

jQuery jQuery.ajaxPrefilter()

본문

jQuery.ajaxPrefilter()

 

설명 : 각 요청을 보내기 전에,에 의해 처리되기 전에 사용자 정의 Ajax 옵션을 처리하거나 기존 옵션을 수정하십시오 $.ajax().

$.ajaxPrefilter(function( options, originalOptions, jqXHR ) {
  // Modify options, control originalOptions, store jqXHR, etc
});
어디에:

options 요청 옵션입니다.
originalOptions그 $.ajax()방법에 제공되는 옵션 이며, 수정되지 않은 것이며, 따라서ajaxSettings
jqXHR 요청의 jqXHR 객체입니다.
프리 필터는 사용자 정의 옵션을 처리해야 할 때 적합합니다. 예를 들어 다음 코드가 주어지면에 대한 호출 $.ajax()은 사용자 정의 abortOnRetry옵션이 다음과 true같이 설정된 경우 동일한 URL에 대한 요청을 자동으로 중단합니다 .

var currentRequests = {};
 
$.ajaxPrefilter(function( options, originalOptions, jqXHR ) {
  if ( options.abortOnRetry ) {
    if ( currentRequests[ options.url ] ) {
      currentRequests[ options.url ].abort();
    }
    currentRequests[ options.url ] = jqXHR;
  }
});

프리 필터를 사용하여 기존 옵션을 수정할 수도 있습니다. 예를 들어 다음 프록시는 http://mydomain.net/proxy/을 통해 도메인 간 요청을 처리합니다.


$.ajaxPrefilter(function( options ) {
  if ( options.crossDomain ) {
    options.url = "http://mydomain.net/proxy/" + encodeURIComponent( options.url );
    options.crossDomain = false;
  }
});
선택적 dataTypes인수가 제공되면, 사전 필터는 표시된 dataTypes가있는 요청에만 적용됩니다. 예를 들어, 다음은 제공된 사전 필터를 JSON 및 스크립트 요청에만 적용합니다.

$.ajaxPrefilter( "json script", function( options, originalOptions, jqXHR ) {
  // Modify options, control originalOptions, store jqXHR, etc
});
또한이 $.ajaxPrefilter()메소드는 해당 dataType을 반환하여 요청을 다른 dataType으로 리디렉션 할 수 있습니다. 예를 들어, 다음은 URL에 사용자 정의 isActuallyScript()함수에 정의 된 특정 특성이있는 경우 요청을 "script"로 설정 합니다.
$.ajaxPrefilter(function( options ) {
  if ( isActuallyScript( options.url ) ) {
    return "script";
  }
});
이렇게하면 요청이 "스크립트"로 간주 될뿐만 아니라 스크립트 dataType에 특별히 첨부 된 모든 사전 필터가 적용됩니다.
 

추천
1

댓글 0개

전체 5,352
개발자팁 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT