2014-02-26 38 views
0

我正在使用名爲wipmania的地理查找API來查找用戶來自哪個國家並執行幾種不同類型的操作。如果API數據無法加載然後執行某些操作

jQuery.getJSON('https://api.wipmania.com/jsonp?callback=?', function (data) { 
// Do my code based on result here. 
}); 

我剛剛發現這個API現在失敗了,所以我的網站沒有執行代碼,我需要某種退步。

我不確定,因爲我無法訪問他們的網站,如果它被記錄如何我可以說如果數據2秒後沒有返回然後做別的事情。

有誰知道一種方式,我可以有一個回落的API不返回任何東西。它基本上只是等待它永遠返回。猜Puesdo方面尋找類似

if API call returns data { 
// execute code per country 
} else { 
// do other code as fallback we can't detect country 
} 

回答

2

您可以使用失敗()回調來處理jQuery.getJSON的一個不成功的結果()。例如:

jQuery.getJSON("example.json", function() { 
    console.log("success"); 
}) 
.fail(function() { 
    console.log("Failed to get JSON"); 
}); 
+0

謝謝你不知道.fail ..現在我知道了!非常感謝 – Redwall

+0

這個函數需要在每個'function()'中包含'data'嗎?例如'.fail(function(data)'按照我的例子嗎? – Redwall

+0

getJSON()只是一個相當於jQuery [ajax](http://api.jquery.com/jQuery.ajax)方法的簡寫。那種信息,你可以看到api返回的是什麼(也可以訪問更廣泛的api)[像這樣](http://jsfiddle.net/mDCN7/) – Ceili

相關問題