2

別のドメイン test.example.com から example.com にアクセスしたいと考えています。サーバーexample.comをセットアップして、次のようなCORSヘッダーでヘッダーに応答します(nginx.conf内):

     add_header Access-Control-Allow-Origin $http_origin;
     add_header Access-Control-Allow-Credentials true;
     add_header Access-Control-Allow-Methods "GET, POST, PUT, DELETE, OPTIONS";
     add_header Access-Control-Allow-Headers "*";

GET リクエストを送信すると成功しますが、POST リクエストを送信すると、次のエラーで失敗します。

XMLHttpRequest cannot load http://example.com/path. Origin http://test.example.com is not allowed by Access-Control-Allow-Origin.

corsで投稿リクエストを行うにはどうすればよいですか?

4

1 に答える 1

3

これはブラウザによって異なります。一部のブラウザは、Access-Controlのワイルドカードを好みません。投稿リクエストのすべてのヘッダーをAccess-Control-Allow-Headersに配置してみてください(たとえば、Access-Control-Request-Headersから)。

また、基本的なGETリクエストの場合、通常は特定のサーバー拡張機能は必要ありません。これがGETが機能する理由の説明になる可能性があります(https://developer.mozilla.org/en-US/docs/HTTP/Access_control_CORSを参照)。

これが機能しない場合:使用しているブラウザとそのブラウザからのリクエストについて詳しく教えてください。

于 2013-02-17T17:11:02.380 に答える