アクセス コントロール リクエスト ヘッダーについて
jQuery を使用して AJAX 経由で HTTP リクエストを行う場合、クロスオリジン リクエストのアクセス コントロールの問題を処理することが重要です。これの 1 つの側面は、リクエストにカスタム ヘッダーを追加することです。興味深いことに、FireBug を使用してリクエストを調べると、それぞれのヘッダーに期待される値ではなく、カスタム ヘッダーが Access-Control-Request-Headers ヘッダーに配置されているように見える場合があります。
問題の解決
この動作は、ブラウザーのセキュリティ対策と、AJAX リクエストがクロスオリジン対話を処理する方法に起因します。これを解決するには、提供された回答に概説されている手順に従います。
$.ajax({ type: "POST", beforeSend: function(request) { request.setRequestHeader("My-First-Header", "first value"); request.setRequestHeader("My-Second-Header", "second value"); }, url: url, data: data, success: function(msg) { alert(msg); } });
beforeSend オプションを使用すると、リクエストが送信される前にリクエスト ヘッダーを設定できます。このオプションを使用すると、カスタム ヘッダーはリクエストに直接追加され、Access-Control-Request-Headers ヘッダーには含まれません。
結論
beforeSend オプションを使用すると、アクセス制御の問題に直面することなく、AJAX リクエストにカスタム ヘッダーを効果的に追加できます。これにより、リクエストとともに追加情報を送信し、クロスオリジン リソースと安全かつ効率的にやり取りできるようになります。
以上がAJAX リクエスト中にカスタム ヘッダーが Access-Control-Request-Headers に表示されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。