ホームページ >バックエンド開発 >PHPチュートリアル >$_SERVER[\'HTTP_X_REQUESTED_WITH\'] は、PHP で AJAX リクエストを検出するための信頼できる方法ですか?

$_SERVER[\'HTTP_X_REQUESTED_WITH\'] は、PHP で AJAX リクエストを検出するための信頼できる方法ですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-04 14:36:11621ブラウズ

Is $_SERVER['HTTP_X_REQUESTED_WITH'] a Reliable Method for Detecting AJAX Requests in PHP?

PHP での $_SERVER['HTTP_X_REQUESTED_WITH'] の存在の確認

オンラインで広く流通しているガイダンスにもかかわらず、$_SERVER[' の存在PHP の HTTP_X_REQUESTED_WITH'] が疑問視されています公式ドキュメントに記載されていないため。この矛盾を調査し、その妥当性を判断してみましょう。

$_SERVER 変数について

$_SERVER は、Web サーバーによって PHP スクリプトに提供される情報の配列です。一般的な考えに反して、これらの変数は PHP の直接の一部ではなく、サーバーによって準備され、渡されます。

$_SERVER['HTTP_X_REQUESTED_WITH']

の存在X-Requested-With ヘッダーは通常、さまざまなフレームワークの Ajax 関数によって送信されます。ただし、すべてのフレームワークにこのヘッダーが一貫して含まれているわけではないことに注意することが重要です。さらに、一部のブラウザでは省略される場合があります。

AJAX 検出の信頼性

$_SERVER['HTTP_X_REQUESTED_WITH'] の存在は、Ajax リクエストを示すことがよくありますが、そうではありません。 100%信頼できる方法です。これは、一部の非 Ajax リクエストにもこのヘッダーが含まれる可能性があり、他のフレームワークが代替方法を使用して Ajax リクエストにフラグを立てる可能性があるためです。

AJAX 検出の代替アプローチ

Ajax リクエストを正確に識別するために、より信頼性の高い方法は、事前定義されたフラグ (GET 変数など) をリクエストとともに送信することです。受信ページはこのフラグの存在をチェックして、リクエストが本当に Ajax ソースからのものであるかどうかを判断できます。

以上が$_SERVER[\'HTTP_X_REQUESTED_WITH\'] は、PHP で AJAX リクエストを検出するための信頼できる方法ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。