0

ユーザーが何かを送信する前に、データベースでフォームを検証するために AJAX をいじり始めましたが、Open 関数の URL 部分で壁にぶつかりました。http://www.mywebsite.com/folder/file.phpなどの完全な URL を使用すると機能しませんが、相対パスのように file.php のみを使用すると正常に機能します。これを引き起こす原因と、より一般的には Open の URL 部分のルールは何か。助けてくれてありがとう。質問に対する回答の早さにはいつも驚かされます。

xmlhttp.open("GET","myFile.php",true); GOOD
xmlhttp.open("GET","http://www.mywebsite.com/folder/myFile.php",true); BAD?
4

1 に答える 1

1

XMLHttpRequests は、同じオリジン ポリシーに従う必要があります。特定のドメインへのリクエストは、同じドメインからのものである必要があります。open()XMLHttpRequest オブジェクトは、メソッドへの URL を、ブラウザが現在いる URL を使用してメインの Window オブジェクトから派生した XMLHttpRequest オブジェクトに格納されたベース URL に関連するものとして扱うことにより、これを強制します。

ここで XMLHttpRequestopen()メソッドの W3C 仕様を参照してください。

于 2012-08-15T04:33:25.887 に答える