0

外部にある csv データを取得してスクリプトにロードしようとしていますが、これはブラウザーの同一オリジン ポリシーが原因で失敗すると思います。クロスドキュメント メッセージングを使用してこれを回避することについて、関連性のある議論をいくつか見つけましたが、正直なところ、これを実装する方法についての手がかりがありません。この回避策または別の回避策に関するアドバイスに感謝します。以下のスクリプトは、各データ行をブラウザ コンソールに出力するはずですが、失敗します

<html>
<head>
    <meta charset='utf-8'>
    <script type="text/javascript" src="scripts/d3.v2.js"></script>
    <title>CSV reader</title>
</head>
<body>
    <script type="text/javascript"> 
        d3.csv("http://www.quake.utah.edu/EQCENTER/LISTINGS/OTHER/Yell_Q32012TT.csv", 
        function(parseCoords) {
          parseCoords.forEach(function(d) {
            console.log(d);
          });
        });
    </script>
</body>
</html>
4

3 に答える 3

1

パーソナル コンピューターのコード エディターで HTML や Javascript を記述し、ブラウザーで出力をテストするなどの作業を行っている場合、クロス オリジン リクエストに関するエラー メッセージが表示される可能性があります。サーバーをセットアップしなくても、ブラウザーは HTML をレンダリングし、ブラウザーで Javascript、jQuery、angularJs を実行します。しかし、多くの Web ブラウザはクロスサイト攻撃を監視するようにプログラムされており、リクエストをブロックします。誰でも Web ブラウザからハード ドライブを読み取ることができるようにしたくはありません。Javascript を実行する Notepad++ と、jQuery や angularJs などのフレームワークを使用して、完全に機能する Web ページを作成できます。Notepad++ メニュー項目、RUN、LAUNCH IN FIREFOX を使用するだけですべてをテストします。これは、Web ページの作成を開始するための優れた簡単な方法ですが、レイアウト以外の何かを作成し始めると、

于 2016-02-08T12:07:15.387 に答える
0

答えられないように見えるため、質問は放棄されました。後日、解決策が見つかったら更新します。

于 2013-01-07T16:23:22.533 に答える
0

ドロップ ボックスのパブリック フォルダ領域にあるファイルにリンクする際に、同様の問題が発生したことがあります。(具体的には https://dl.dropbox.com/u/101577503/D3-Tips-and-Tricks-Latest.pdf )。Web ページからリンクを初めてクリックすると、pdf のダウンロードが失敗し、更新すると機能します。原因はわかりませんが、Chrome で「http://dl.dropbox.com/u/46043231/data/xy.csv」をテストすると同じ結果が得られます。また、初めて機能する場合でも、クロスドメインの制限によって妨げられる可能性はありますか?

于 2013-01-02T17:49:32.420 に答える