-1

私はウェブサイトを開発しており、フォームはデータを投稿して結果を送り返す jQuery $.ajax に依存しています。

しかし、私には問題があります。

「 http://site.com/ 」からサイトにアクセスし、フォームの送信ボタンをクリックすると、問題なく動作します。

しかし、「http://www.site.com/」からサイトにアクセスしてフォームの送信ボタンをクリックすると、エラーが発生します。

これがなぜなのか誰か知っていますか?

ありがとう。

4

2 に答える 2

2

これはクロスドメイン制限と呼ばれます。AJAX では、ごくわずかな例外を除いて、ページの読み込みに使用しているドメインと同じドメインにしかアクセスできません。JSONP を使用してトンネリングすることが可能です。

これはセキュリティ対策です。リモートの攻撃者があなたの情報を AJAX で送信できた場合を想像してみてください。AJAX 呼び出しは非常に簡単に挿入できます。ブラウザー メーカーは、情報漏えいを防止するためのセキュリティ対策としてこれを追加しました (XSS、CSRF など、すでにあまりにも一般的です)。

ローカルで呼び出す必要がある場合は、スクリプトで URL をハードコーディングしないことを検討してください。

于 2013-03-27T23:37:33.753 に答える
2

サイトの所有者が DNS をプレフィックスwwwで動作するように設定していないため、何らかの方法でサイトにアクセスできない可能性があります。www

于 2013-03-27T23:37:44.060 に答える