Я хотел бы проверить серверную сторону, если запрос на мою php-страницу является запросом ajax или нет.
Я видел два способа сделать это:
Первый способ: отправка параметра GET
в запрос, который сообщает странице, что это запрос AJAX (= mypage.php?ajax
)
mypage.php:
if(isset($_GET['ajax'])) {
//this is an ajax request, process data here.
}
Второй способ: установите заголовок в 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
}
Дело в том, что эти два способа сделать это можно легко взломать, поэтому он не защищен, чтобы проверить, получил ли я такой запрос AJAX.
Как я могу проверить, получил ли я запрос AJAX?