CORS によって防止されるエラー:「Origin は Access-Control-Allow-Origin によって許可されていません」
はじめに:
クロスオリジン リソース共有 (CORS) 中に、クライアント側スクリプトが実行されているオリジンとは異なるオリジンからリソースにアクセスしようとすると、「オリジンは Access-Control-Allow-Origin によって許可されていません」エラーが発生しますfrom.
原因:
このエラーにはいくつかの潜在的な原因があります:
-
同一生成元ポリシー: JavaScript は以下から制限されていますサーバーの明示的な許可なしにドメイン外のリソースにアクセスすること。このポリシーは、悪意のあるスクリプトがユーザー データを盗んだり、サイトのセキュリティを侵害したりすることを防ぎます。
-
サーバーの設定が正しくありませんでした。 サーバーは、許可するための応答に適切な Access-Control-Allow-Origin ヘッダーを含める必要があります。特定のオリジンへのアクセス。このヘッダーが欠落しているか正しくない場合、ブラウザーはリクエストを阻止します。
問題の解決:
-
サーバーの応答を確認する: サーバーの応答ヘッダーを調べて、Access-Control-Allow-Origin ヘッダーが含まれ、目的のオリジンに設定されていることを確認します。
-
サーバーで CORS を有効にします:サーバーでは CORS が有効になっていないため、CORS をサポートするように構成する必要があります。これには、Web サーバーの構成ファイルで CORS ルールを設定することが含まれる場合があります。
-
JSONP を使用する: JSONP (JSON with Padding) は、データを返すことを許可する同一生成元ポリシーの回避策です。 XML ドキュメントではなく関数呼び出しとして。ただし、サーバーは JSONP をサポートするように構成されている必要があります。
-
プロキシを使用する: PHP スクリプトや ASP サービスなどのサーバー側プロキシを使用して、サーバーからリソースを取得できます。異なるオリジンを選択してクライアント側のスクリプトに渡します。
以上がCORS はどのようなエラーを防ぎますか: 「Origin は Access-Control-Allow-Origin によって許可されていません」の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。