私のphpページへのリクエストがajaxリクエストであるかどうかをサーバー側で確認したいと思います。
これを行うには2つの方法を見ました:
最初の方法:GET
これが AJAX リクエストであることをページに伝えるリクエストでパラメーターを送信する (= mypage.php?ajax
)
mypage.php:
if(isset($_GET['ajax'])) {
//this is an ajax request, process data here.
}
2 番目の方法: ヘッダーを次のように設定しますxmlHttpRequest
。
クライアント側 js:
xmlHttpRequestObject.open(“GET”,url,true);
xmlHttpRequestObject.setRequestHeader('X-Requested-With', 'XMLHttpRequest');
mypage.php:
if (!empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest' ) {
//request is ajax
}
実際、これら 2 つの方法は簡単にハッキングされる可能性があるため、このような AJAX リクエストを受け取ったかどうかを確認するのは安全ではありません。
AJAX リクエストを受信しているかどうかを確認するにはどうすればよいですか?