[英]How to use jQuery ajax to get a jsonp response from this json string
我似乎找不到任何信息可以幫助我解決這個問題,或者我做錯了所有情況(很可能是這種情況)。 我在此URL上有一些示例JSON數據:
http://dev.plaidduckdesign.com/zen/album.php?aid=1037521524
注意:該頁面大約需要20秒才能加載。
我通過一個json驗證器運行它,然后它又干凈了。 我試圖從該頁面請求的數據只是一個具有jonsp dataType的ajax請求,因為它不在同一域中。 但是我什么也沒做。 我只是不斷收到未知錯誤。 這是我的ajax請求:
$.ajax({
url: url,
dataType: "jsonp",
data: request,
success: function(data, textStatus, jqXHR) {
var obj = jQuery.parseJSON(rootData);
alert(obj[0].url);
},
error: function(jqXHR, textStatus, errorThrown) {
//alert("error ")
} // end error:
}); // end ajax
我還沒有真正獲得成功的方法,只是錯誤。
任何信息或指向正確的方向都倍受贊賞。
為了使跨域調用正常工作,遠程服務器必須支持JSONP,而不是JSON。 似乎並非如此。 當前響應如下:
[
{
url: "http://pizzutistudiosphotography.zenfolio.com/img/s8/v74/p1492770658-6.jpg?sn=3&tk=o4bxcOgmoSJ03SfRC3fclWNn73JkTdATCgOQI0JQxKA=",
width: 640,
height: 960,
title: "F2013_0120_Daoust_001",
copy: "© pizzuti studios photography | pizzutistudios.com",
caption: "Please respect our copyright. For more information please visit <a target="_blank" href="http://pizzutistudios.com">http://pizzutistudios.com</a>"
},
{...}
]
這是有效的JSON。 但是為了使其正常工作,網站需要支持JSONP
格式,如下所示:
somecallback(
[
{
url: "http://pizzutistudiosphotography.zenfolio.com/img/s8/v74/p1492770658-6.jpg?sn=3&tk=o4bxcOgmoSJ03SfRC3fclWNn73JkTdATCgOQI0JQxKA=",
width: 640,
height: 960,
title: "F2013_0120_Daoust_001",
copy: "© pizzuti studios photography | pizzutistudios.com",
caption: "Please respect our copyright. For more information please visit <a target="_blank" href="http://pizzutistudios.com">http://pizzutistudios.com</a>"
},
{...}
]
)
在somecallback
應指定somecallback
的位置。
您應該聯系網站的作者,並詢問他們的網站是否支持JSONP。 如果不是,則無法通過AJAX調用使用它。 或者,您可以在域上編寫服務器端腳本,該腳本將充當網橋並將請求發送到遠程域。 然后將您的AJAX請求發送到您自己的腳本。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.