-1

Yahoo の Finance API から JSON データを取得しようとしています。

$.getJSON("http://query.yahooapis.com/v1/public/yql?q=select%20%2a%20from%20yahoo.finance.quotes%20WHERE%20symbol%3D%27WRC%27&format=json&diagnostics=true&env=store://datatables.org/alltableswithkeys&callback", function(data) {
// I am parsing JSON string using data here 
});

問題は、在庫が近いときに、最後の取引値を表示する必要がある場合です。値を CSV ファイルとして返すリンクを見つけました。そのため、ダウンロードしてjQueryで解析する必要があります。

これは私がこれまでに行ったことです:

$.getJSON("http://query.yahooapis.com/v1/public/yql?q=select%20%2a%20from%20yahoo.finance.quotes%20WHERE%20symbol%3D%27WRC%27&format=json&diagnostics=true&env=store://datatables.org/alltableswithkeys&callback", function(data) {


if(data.query.results.quote.DaysLow == null && data.query.results.quote.DaysHigh == null){

    //When stock is closed this section works
    var date = data.query.results.quote.LastTradeDate;
    var datesplit = date.split('/');


        $.ajax({
        type: "GET",
        url: "http://ichart.finance.yahoo.com/table.csv?s=WRC&a="+ datesplit[1] +"&b="+ datesplit[0] + "&c="+ datesplit[2] +"&d="+ datesplit[1] +"&e="+ datesplit[0] +"&f="+ datesplit[2] +"&g=d&ignore=.csv",
        dataType: "text",
        success: function(data) { 
            console.log(data);
        }
        });
}
else{
  //When stock is not closed this section works
  //There is no problem in this section

}       
});

これは私が得るエラーメッセージです:

XMLHttpRequest はhttp://ichart.finance.yahoo.com/table.csv?s=WRC&a=18&b=9&c=2012&d=18&e=9&f=2012&g=d&ignore=.csvを読み込めません 。Origin null は、Access-Control-Allow-Origin では許可されていません。

CSVファイルのダウンロードについて教えてください。

4

2 に答える 2

1

私はあなたが単にそれを呼び出すことができるajaxの必要はないと思います

    document.location.href = "http://ichart.finance.yahoo.com/table.csv?s=WRC&a="+ datesplit[1] +"&b="+ datesplit[0] + "&c="+ datesplit[2] +"&d="+ datesplit[1] +"&e="+ datesplit[0] +"&f="+ datesplit[2] +"&g=d&ignore=.csv";

ページをリロードしません

于 2012-09-19T11:21:57.553 に答える
-1

サーバーサイドスクリプトを使用して実行できます

例:-

  $.ajax({
    type: "GET",
    url: "your-server-side-file.php",
    dataType: "text",
    success: function(data) { 
        console.log(data);
    }
  });

そのサーバーファイルyour-server-side-file.phpプロセスで、csvファイルが値を解析します。独自の形式で返します。

たとえば、php csv ファイルの解析http://php.net/manual/en/function.fgetcsv.php

于 2012-09-19T11:36:26.237 に答える