1

CSV ファイルの形式でデータを返す Yahoo Finance API を呼び出そうとしています。

私はJavascriptでこれをやろうとしていますが、以下の通りですが、失敗しています。

$.ajax({
type: "GET",
url: "http://finance.yahoo.com/d/quotes.csv?s=RHT+MSFT&f=sb2b3jk",
dataType: "text",
success: function(data) { 
    // when successful
}
  }).error(function(jqXHR, textStatus, errorThrown) {
               console.log("error " + textStatus);
        console.log("incoming Text " + jqXHR.responseText);
        console.log("error THrown " + errorThrown);
        });

エラーメッセージが何であるかを知るにはどうすればよいですか? エラーにコールバックを設定しようとしましたが、「エラー」を返す textStatus を除いて、すべてのパラメーターが空です。

4

1 に答える 1

2

たまたま.csvajax を使用してファイルをダウンロードできない (CORS が有効になっている場合などを除く) ことがありますが、あなたは Yahoo Finance からの株価情報を探しているようで、Yahoo はこの情報を YQL と Pipes の両方で提供しています。 YQL の非常に簡単な例:

var tick = 'MSFT';

var url = 'http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.quotes%20where%20symbol%20in%20(%22'+tick+'%22)%0A%09%09&format=json&diagnostics=true&env=http%3A%2F%2Fdatatables.org%2Falltables.env&callback=?';

$.getJSON(url, function(data) {
    console.log(data.query.results);
});

フィドル

YQL CONSOLEでは、Yahoo のデータに対してさまざまなクエリを試すことができます。これはすべて ajax を使用して XML または JSON として利用できるため、.csvファイルは必要なく、YQL から直接データを取得する必要があります。

于 2013-06-19T06:20:42.517 に答える