我正在呼叫 API 以回傳一些資料。我可以在開發工具中看到回應是 200 成功,并且在網路選項卡中可以看到回傳的資料。
我的問題是在我的 UI 中顯示資料。在這個階段,我想要做的就是在警報中顯示回傳的資料。
我嘗試了以下操作,但警報沒有觸發。我在控制臺中看不到任何錯誤,如果我手動訪問 PHP 檔案(替換 GET 變數),則沒有錯誤。
jQuery
$.getJSON('fetch.php', { getFiat: fiat, getCoin: coin, getLimit: limit, getAggregate: aggregate, getCall: 4 }, function(data) {
alert(data);
}).fail(function (j, t, e) {
console.log(e);
});
PHP
if($_GET['getCall'] == 4) {
try {
callAPI();
$data = file_get_contents('https://min-api.cryptocompare.com/data/v2/histoday?fsym='.$_GET['getCoin'].'&tsym='.$_GET['getFiat'].'&limit='.$_GET['getLimit'].'&aggregate='.$_GET['getAggregate'].'&e=CCCAGG&api_key=[key]');
$json = json_decode($data);
if(isset($json->Response) != "Error") {
echo $data;
} else {
echo "Broken duh..";
}
}
//catch exception
catch(Exception $e) {
echo $e->getMessage();
}
}
API 回應如下所示:https : //min-api.cryptocompare.com/data/v2/histoday?fsym=BTC&tsym=USD&limit=30&aggregate=1&e=CCCAGG
uj5u.com熱心網友回復:
此檢查isset回傳true或false再檢查,如果true還是false不等于"Error":
if(isset($json->Response) != "Error") {
如果是,isset則回傳truewhich is ==to "Error"。您需要進行兩次單獨的檢查。根據發生錯誤時回傳的內容,可能:
if(isset($json->Response) && $json->Response != "Error") {
或者檢查是否成功:
if(isset($json->Response) && $json->Response == "Success") {
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/338605.html
上一篇:jQuery無法選擇元素
