2017-10-04 3 views
0

Warum kann ich nicht auf Daten wie Preis usw. auf den Erfolg des Rückrufs zugreifen. Ich bekomme eine Erfolgsantwort. Ich bekomme die aggregierten Daten, kann aber irgendwie nicht auf den Wert des Preises in diesem Array [aggregatedData] zugreifen. Alles versuchtAjax API Call-Zugangsdaten auf Erfolg zurückrufen, JQUERY

function reqBitcoinData() { 
     $.ajax({ 
      "url":"https://www.cryptocompare.com/api/data/coinsnapshot/?fsym=BTC&tsym=USD", 
      "method": "get", 
      "cache": false, 
      "dataType": "JSON" 
     }).done(function(jData) { 
      console.log(jData); 


      $.each(jData, function(i, jCurrency) { 

       var AggregatedData = jCurrency.AggregatedData; 

       aCurrencies.push(AggregatedData); 

       console.log(AggregatedData); 

      }) 


     }).fail(function(jFail) { 
      console.log('Failed'); 
     }) 
    } 
+0

Wo ist 'aCurrencies' definiert und wo versuchen Sie es zugreifen? –

+2

Teilen Sie uns die Ausgabe von 'console.log (jData);'. –

+0

Wenn der Datentyp json ist, müssen Sie 'JSON.parse (jData);' vor dem Iterieren. –

Antwort

-1

Die Antwort des API ist ein Objekt, das Antwort, Messaging und Daten enthält. Sie müssen also Schleife durch die response.data wie so:

function reqBitcoinData() { 
    $.ajax({ 
     "url":"https://www.cryptocompare.com/api/data/coinsnapshot/? 
fsym=BTC&tsym=USD", 
     "method": "get", 
     "cache": false, 
     "dataType": "JSON" 
    }).done(function(jData) { 
     console.log(jData); 


     $.each(jData.Data, function(i, jCurrency) { 

      var AggregatedData = jCurrency.AggregatedData; 

      aCurrencies.push(AggregatedData); 

      console.log(AggregatedData); 

     }) 


     }).fail(function(jFail) { 
     console.log('Failed'); 
    }) 
    } 
+0

Vielen Dank !!! Jetzt kann ich auf den Datenwert zugreifen. – logicappsource

+0

Wenn meine Antwort hilfreich war, warum haben Sie sie abgelehnt? –

+0

Ich @Mark Adesian nicht. Ich habe nur 10 Ruf, also kann ich nicht wählen! Ich freue mich über Ihre Antwort und wünsche Ihnen, dass ich Ihnen den grünen Check und die Upvote +1 geben könnte – logicappsource

0

Wenn Sie Preise suchen:

function reqBitcoinData() { 
aCurrencies=[]; 
    $.ajax({ 
     "url":"https://www.cryptocompare.com/api/data/coinsnapshot/?fsym=BTC&tsym=USD", 
     "method": "get", 
     "cache": false, 
     "dataType": "JSON" 
    }).done(function(jData) { 
     console.log(jData); 
    var AggregatedData=jData.Data.AggregatedData; 

    console.log(AggregatedData); 
    //Price under AggregatedData 
var Price=AggregatedData.PRICE; 
console.log(Price); 

//Prices under Exchanges 
     $.each(jData.Data.Exchanges, function(i, jCurrency) { 

    aCurrencies.push(jCurrency.PRICE); 
     }) 
console.log(aCurrencies); 

    }).fail(function(jFail) { 
     console.log('Failed'); 
    }) 
}