3

やあ、

私は、openlayersの例を含むjsFiddleに取り組んでいます。 http://dev.openlayers.org/releases/OpenLayers-2.11/examples/snapping.html

現時点では、データを取得するためのhttpリクエストに対する応答がないため、機能していません。どうすれば修正できますか?

jsFiddleは次のとおりです。http://jsfiddle.net/TcuxA/6/スクリプト の「//3つのベクターレイヤーを作成する」という行に移動します。データのリクエストは3つあります。ブラウザにURLを入力すると、JSONが取得されますが、jsFiddleを実行するとfirebugで3つのエラーが発生します。

jsFiddle echo(http://doc.jsfiddle.net/use/echo.html)で修正しようとしましたが、うまくいきませんでした。スクリプトを変更してデータをロードする方法がわかりません。

これらのURLでjsonを取得できないのはなぜですか?良い解決策は何ですか?

4

2 に答える 2

1

AJAX異なるドメインから要素を呼び出すために使用しているため、発生しているのはXMLHttpRequestオブジェクトによってスローされる例外です。これは、たとえば、ここでより適切に言われます。

「XMLHttpRequestオブジェクトは、独自のドメインの外部からWebサービスを呼び出すことができません。ある場所でスクリプトを呼び出し、次に別のサーバーでスクリプトを呼び出すと、アプリケーションがすべてのユーザーに開かれたままになる可能性があるため、これは賢明です。ある種の悪意のあるスクリプト、ハッキング、エクスプロイト。」

したがって、最も簡単な方法は、ローカルでコーディングし、ローカルサーバーに存在するファイル(poly.json、line.json、point.json)のローカルコピーを呼び出すことです。すべてがマップ上に表示されるかどうかをテストするために、ファイルをコードにハードコーディングできます。それ以外の方法でどのように達成できるかわかりません。

于 2012-06-25T16:03:30.760 に答える
1

良い解決策はこれです:github応答を使用します。事前定義されたXHRリクエストの応答とともに、サンプルをgithubに保存できます。

于 2012-10-10T13:43:26.793 に答える