1

/robots.txtJavaScriptを使って様々なサイトからアクセスできるようにしたい。これは、すべてが私の管理下にあるわけではなく、サイトの可用性をテストするサイド プロジェクト用です。私はこれを試しました:

    $.get(robotsUrl, function() {
            console.log('success!');
    }, "text")
        .fail(function() {
            console.log('failed :(');
        });

ただし、これは失敗します

XMLHttpRequest cannot load https://my.test.url/robots.txt. Origin http://localhost:8000 is not allowed by Access-Control-Allow-Origin

Same-Origin-Policy に関する MDN のページに<script>は、、 などの要素を含むコンテンツを埋め込むことが可能であると書かれてい<iframe> <embed>ます。/robots.txtこれらのいずれかで任意のサイトからロードできますか? 他のドメインでこのファイルにアクセスできる他の方法はありますか?

4

4 に答える 4

3

それらのいずれでもロードできますが、データを JavaScript で使用できるようにすることはできません。これこそが、Same Origin Policy の要点です。

任意のサイトから任意のデータを取得したい場合は、サーバー側で行う必要があります。

于 2013-08-04T19:06:39.003 に答える
0

Same Origin Policy を無効にしてブラウザを実行することにより、Chrome でこれが可能であることを確認してください: Disable same origin policy in Chrome

ただし、ブラウザのコンテキスト外でこのようなことを行う方が望ましい場合があります。コマンドラインでは、おそらく CURL のようなものを使用しますか?

于 2013-08-04T19:15:50.497 に答える