jQuery.ajaxPrefilter() $.ajax() ÇÔ¼ö È£Ãâ Àü Ajax ¿É¼Ç ¼öÁ¤ |
|
|
 |
8³â Àü |
°³¿ä : Ajax ¿äûÀ» º¸³»±â ÀüÀ̳ª $.ajax() ÇÔ¼ö¿¡ ÀÇÇØ È£ÃâµÇ±â Àü¿¡ Ajax ¿É¼ÇµéÀ» ¼öÁ¤Çϰųª Á¶ÀÛÇÕ´Ï´Ù.
jQuery.ajaxPrefilter( [dataTypes], handler(options, originalOptions, jqXHR) )
dataTypes °ø¹é ¹®ÀÚ¿·Î ±¸ºÐµÈ dataType ¹®ÀÚ¿, »ý·«°¡´É
handler(options, originalOptions, jqXHR) ÇâÈÄ ¾Æ¾à½º ¿äû¿¡ ´ëÇØ ±âº»°ªÀ» ¼³Á¤ÇÏ´Â Çڵ鷯.
$.ajaxPrefilter() ÇÔ¼öÀÇ ±âº»ÀûÀÎ »ç¿ë¹ýÀº ¾Æ·¡¿Í °°½À´Ï´Ù.
$.ajaxPrefilter( function( options, originalOptions, jqXHR ) {
// Modify options, control originalOptions, store jqXHR, etc
});
°¢ ÀÎÀÚµéÀ» ¼³¸íÇϸé :
options : request ¿äû ¿É¼Ç °ªµé
originalOptions : ajax ÇÔ¼ö¿¡ ¾²ÀÏ ¼öÁ¤µÇÁö ¾ÊÀº ¿É¼Ç°ªµé(Èì, Á¤Ã¼°¡ ±Ã±ÝÇϱº¿ä;;;)
jqXHR : jqXHR 겍ü ( jquery XMLHttpRequest )
Prefilters ´Â Ä¿½ºÅÒ ¿É¼ÇÀ» »ç¿ëÇØ¾ß ÇÒ ¶§ ¾Ë¸Â½À´Ï´Ù. ¿¹¸¦ µé¾î ¼³¸íÇϸé, ¾Æ·¡ ÄÚµåó·³ abortOnRetry ¿É¼ÇÀÌ true·Î ¼¼ÆõǾî ÀÖ´Ù¸é $.ajax() ÇÔ¼ö´Â URL¿¡ ´ëÇÑ ¿äûÀ» Ãë¼ÒÇÏ°Ô µÇ´Â °ÍÀÔ´Ï´Ù.
var currentRequests = {};
$.ajaxPrefilter(function( options, originalOptions, jqXHR ) {
if ( options.abortOnRetry ) {
if ( currentRequests[ options.url ] ) {
currentRequests[ options.url ].abort();
}
currentRequests[ options.url ] = jqXHR;
}
});
options °´Ã¼ÀÇ abortOnRetry ¶ó´Â ¼Ó¼ºÀº »ç¿ëÀÚ°¡ ¸¸µç °ÍÀÌ°í, ±× °ªÀÌ true ¶ó¸é AjaxÀÇ ±âº» ¼Ó¼ºÀÎ url ¿¡ ´ëÇÑ ½ÇÇàÀ» abort Ç϶ó´Â ¿¹Á¦ÀÎ °Í(?) ÀÔ´Ï´Ù. ¤¾¤¾;;
¶ÇÇÑ Prefilters ´Â ÀÌ¹Ì ÀÛ¼ºµÈ ¿É¼ÇÀ» ¼öÁ¤ÇÒ ¼öµµ ÀÖ½À´Ï´Ù. À̰͵µ ¿¹Á¦°¡ ÀÖ½À´Ï´Ù.
$.ajaxPrefilter( function( options ) {
if ( options.crossDomain ) {
options.url = "http://mydomain.net/proxy/" + encodeURIComponent( options.url );
options.crossDomain = false;
}
});
¿É¼Ç°ªÀÎ dataTypes ÀÎÀÚ¸¦ »ç¿ëÇÏ´Ù¸é, prefilter´Â dataType ÇüÅ·Π¿äûÀ» ÁøÇàÇÕ´Ï´Ù. ¿¹Á¦¸¦ º¸½Ã¸é, JSON °ú script ·Î prefilter ¸¦ ÇÏ°í ÀÖ´Â ¸ð½ÀÀÔ´Ï´Ù.
$.ajaxPrefilter( "json script", function( options, originalOptions, jqXHR ) {
// Modify options, control originalOptions, store jqXHR, etc
});
$.ajaxPrefilter() ÇÔ¼ö´Â ¾Æ·¡Ã³·³ isActuallyScript() ¶ó´Â »ç¿ëÀÚ°¡ ¸¸µç ÇÔ¼öÀÇ ¾î¶² ƯÁ¤ÇÑ °á°ú¿¡ ÀÇÇؼ "script" dataType À» ¿äûÇÏ ¼öµµ ÀÖ½À´Ï´Ù.
$.ajaxPrefilter(function( options ) {
if ( isActuallyScript( options.url ) ) {
return "script";
}
}); |
|
̵̧ : 344 |
̵̧
¸ñ·Ï
|
|