Seongsiks

Being A DevOpser. Powered by
Obtvse, highlight.js, theme toc Creative Commons License
Seongsiks Twitter Github Email
DevOps Ruby On Rails Chef Projects Misc Movies & Drama ME

Jquery : AJAX #2

Overview

아는것만 쓰던 ajax를 좀 제대로 복습하면서 몰랐던것 정리

Options

$.ajax('/flights', {
  data: { date: activeDiv },
  cache: false, // 브라우져가 캐시를 사용하지 않도록
  timeout: 8000 // ajax request에 타임아웃걸기
  success: function(result) {
    $(activeDiv).html(result);
    $(activeDiv).show();
  } 
});

Aborting AJAX request

function showFlights(activeDiv) {
  $("#tabs div").hide();
  if (fetchingFlights) {
    // 현재 요청중인 request가 있으면 중단
    // error 콜백이 호출된다 주의!!
    fetchingFlights.abort();
  }
  fetchingFlights = $.ajax('/flights', { ...
    complete: function(result) {
      $('#tabs #loading').hide();
      fetchingFlights = null;
    }
    error: function(result) {
      if (result.statusText != "abort") {
        $('#tabs #error').show();
      }
    }
  });
}  

JSONP

다른 도메인에 데이터를 요청할때 사용하는데, 그 쪽서버에서 jsonp를 지원하도록 해줘야한다.

function fetchWeather() {
  $.ajax('http://api.wunderground.com/api/./conditions/q/32789.json', {
    dataType: 'jsonp',
    success: function(json) {
      alert(json.current_observation.temperature_string);
    }
  }); 
}
comments powered by Disqus
Back to Misc