jQuery XML リクエストのエラー処理: 「'Access-Control-Allow-Origin' ヘッダーがありません」エラー
XML へのアクセス時のエラーの解決jQuery の AJAX 手法を使用してファイルをオンラインに保存すると、「要求されたリソースに 'Access-Control-Allow-Origin' ヘッダーが存在しません。」というエラーが発生するのが一般的です。このエラーは、クロスドメイン要求を防ぐためにブラウザによって課されたセキュリティ対策によって発生します。
クロスオリジン リクエストについて
一般的な Web アプリケーションでは、HTML ページ (オリジン) とリクエストされたリソース (ターゲット) は同じドメインに存在します。 、異なるドメインのサーバーにリクエストを行う場合、ブラウザは同一オリジン ポリシーを適用し、セキュリティ上の理由からクロスドメイン リクエストを制限します。
エラーの修正
解決するにはこのエラーが発生し、クロスドメイン要求が正常に行われる場合、開発者はサーバー側の構成を変更して CORS (Cross-Origin Resource Sharing) を有効にする必要があります。CORS を使用すると、サーバーはリソースへのアクセスを許可されるオリジンを明示的に宣言できます。
方法 1: CORS ヘッダーの追加
CORS を有効にする最も効果的な方法は、次のヘッダーをサーバーの応答に追加することです:
Access-Control-Allow-Origin: * Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS Access-Control-Allow-Headers: Content-Type, X-Requested-With
これらのヘッダーは次のことを指定しますさまざまなリクエスト メソッドとヘッダー タイプを使用して、任意のオリジン (「*」で表される) からリソースにアクセスできること。
方法 2: リバース プロキシ (ミラー ホスティング)
サーバー側の変更が不可能な場合、開発者はリバース プロキシなどのツールを使用してターゲット リソースをミラーリングできます。これにより、元のサーバーをそのまま残しながら、プロキシ サーバーが必要な CORS ヘッダーを提供できるようになります。
追加のヒント
以上がjQuery AJAX で XML をロードする際の「No \'Access-Control-Allow-Origin\' ヘッダー\' エラー」を修正する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。