因此,我最近學會了如何進行AJAX調用,並知道在使用來自外部服務器的API時需要使用JSONP。正如我從sitepoint瞭解到的,有人指出,JSONP的不同之處在於它被封裝在一個函數中,通過腳本標籤可以訪問它。將數據歸類爲JSONP以及如何使用普通的JavaScript獲取它?
SitePoint鏈接:https://www.sitepoint.com/jsonp-examples/ E.g http://run.plnkr.co/plunks/v8xyYN64V4nqCshgjKms/data-2.json
雖然我不明白的是爲JSONP Flickr的API。
Flickr API鏈接JSONP: https://api.flickr.com/services/feeds/photos_public.gne?jsoncallback=? Flickr API鏈接XML: https://api.flickr.com/services/feeds/photos_public.gne?
它似乎是返回XML數據。更讓我困惑的是,這種類型的xml被jQuery的$ .getJSON()所接受,而它在xml中的原始api也會導致相同的原始策略錯誤。我可以在它們之間找到的主要區別是幾個href的變化。
那麼是什麼讓XML的Flickr JSONP,以及如何在普通的JavaScript中使用它的Ajax調用?
任何對此的反饋,將不勝感激:)爲清楚起見
更新:
Here I have working code using the flickr XML that does an ajax call with jQuery.
鏈接:https://jsfiddle.net/Jonathan002/05ao4d87/
我被教導,這只是通過JSONP中成爲可能樹屋。 https://teamtreehouse.com/library/ajax-basics/ajax-and-apis/displaying-the-photos。如果我沒有使用JSONP來完成這項任務,那麼我能夠繞過同樣的原產地政策呢?
*「那麼是什麼讓XML的flickr JSONP ......」*沒有,你說的鏈接的迴應JSONP沒有。它返回XML。例如,我建議做更多的研究,[閱讀JSONP維基百科文章](http://en.wikipedia.org/wiki/JSONP#JSONP)。 –