をブラウザに入力すると、json形式のAAPLストックオプションデータのテキストであるtxtファイルが自動的にダウンロードされます。GoogleファイナンスオプションAPIのURL
http://www.google.com/finance/option_chain?q=AAPL&output=json
私はので、私は結果を解析し、ブラウザにデータを表示することができ、直接かかわらず、Javascriptの変数には、このデータを取得したいと思います。
は、私が試した:$.getJSON('http://www.google.com/finance/option_chain?q=AAPL&output=json', function(json) {
console.log(json);
});
が、他の記事に見られるように、私は、No 'Access-Control-Allow-Origin' header is present on the requested resource.
エラーが発生します。
私もAjaxで試してみました:
$.ajax({
dataType: "json",
url: "http://www.google.com/finance/option_chain?q=AAPL&output=json",
}).done(function (data) {
console.log(data);
});
が、同じエラーを取得します。
URLでjsonp(&output=jsonp
)を試しましたが、Uncaught SyntaxError: Unexpected token)
というエラーが表示され、Chromeのインスペクタで();
が返されます。
このjsonデータをGoogleから直接JSにプルするにはどうすればよいですか?
'http:// 'ではなく' https:// 'を試してください –
エラーは表示されなくなりましたが、データが取得されず、コンソールに何も印刷されません。ありがとう – brno792
データを取得する場合は、Ajaxオブジェクトに成功関数を入れてみてください。 Ajaxの復帰後、done関数ではなくsuccess関数に移ります。 Ajaxは非同期メソッドであるため、done関数を最初に実行します。 –