2017-05-24 6 views
0

arbeitete ich mit Befestigungs diesen Code etwas Hilfe möchten, die JSON zurückzukehren versucht, die so etwas wie dies enthalten:JSON von YQL mit jQuery Erste nicht

{ 
"col0": "4-Jan-17", 
"col1": "115.85", 
"col2": "116.51", 
"col3": "115.75", 
"col4": "116.02", 
"col5": "21118116" 
}, 
{ 
"col0": "3-Jan-17", 
"col1": "115.80", 
"col2": "116.33", 
"col3": "114.76", 
"col4": "116.15", 
"col5": "28781865" 
} 

Hier ist mein Code, wie es jetzt ist :

function getData() { 
var dataFormat= "&format=json&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys"; 
var site = 'http://www.google.com/finance/historical?q='+ 'AAPL' +'&startdate=Jan+01%2C+2017&enddate=Jan+05%2C+2017&output=csv'; 
var symbol = $("#txtSymbol").val(); 
var historicalQ = 'http://query.yahooapis.com/v1/public/yql?q=' + encodeURIComponent('select * from csv where url="' + site + '"') + dataFormat; 


$(function() { 
    $.getJSON(historicalQ, function(json) {    
     var test = json; 
     console.log(test); 
    }); 
}); 
} 

ich ursprünglich yahoos Datenbank wurde mit, aber sie schließen, dass vor kurzem nach unten so in das ich versuche, es zu verwenden Google-API zu übersetzen. Als ich das laufen lasse, erhalte ich etwas, das völlig falsch aussieht:

[object Object] { 
query: [object Object] { 
count: 4, 
created: "2017-05-24T20:26:37Z", 
lang: "en-US", 
results: [object Object] { ... } 
    } 
} 

Ich weiß, dass die Google-Verbindung funktioniert, weil ich es in der YQL Konsole getestet haben, so dass ich denke, dass der Fehler in meinem Code ist. Jede Hilfe wäre willkommen!

Antwort

0

Es stellte sich heraus, dass ich es herausgefunden habe. Ich musste mir die zurückgegebene JSON-Antwort in der YQL-Konsole ansehen und herausfinden, was ich tun musste. Hier ist, was ich geändert habe:

$(function() { 
    $.getJSON(historicalQ, function(json) {    
     result = json.query.results; 
     var length = Object.keys(result.row).length; 
     for (var i=1; i < length; i++) { 
     console.log(result.row[i].col4); 
     } 
     }); 

Dies nimmt die Spalte "schließen" Preis aus dem Ergebnis. Es gab [object Object] zurück und ich erkannte, dass ich genau angeben musste, welchen Aspekt des JSON ich wollte. Dies nur für den Fall, dass jemand ein ähnliches Problem erlebt und Hilfe benötigt.