2015-09-27 53 views
-1

據我所知,JSONP背後的關鍵概念是<script>標籤
是繞過javascript相同的原始策略的唯一元素。 因此,使用這些標籤我們可以加載僞裝成js代碼的第三方數據。JSONP與AJAX的內部工作

我不太明白JSONP如何與AJAX結合使用。

我最好的猜測是:

當AJAX調用的抽油煙機一<script> tag元素是實際上書面文件中的確切時刻AJAX請求已被製成,因此它的結果是下發立即評估。

你能幫助我,這些也提供一個簡單的例子嗎?

感謝

+0

我不認爲我的問題是重複的。在這個問題上,你沒有提到AJAX。 – GionJh

回答

0

它的工作原理正是你認爲應該的方式:

JSONP via XHR

它增加了一個異步script標籤進入head,並立即調用回調函數後刪除。


更新

只有告知,我用的是JSONP Flickr的API在上面的例子:

setTimeout(function() { 
    $.getJSON('http://api.flickr.com/services/feeds/photos_public.gne?jsoncallback=?', { 
     tags: 'jquery', 
     tagmode: 'any', 
     format: 'json' 
    }, 
    function(data) { 
     $.each(data.items, function(i, item) { 
     $('<img />').attr('src', item.media.m).appendTo('#images'); 
     }); 
    }); 
}, 2000);