Проверка AJAX запроса через "HTTP_X_REQUESTED_WITH"
Здравствуйте, осваиваю работу с AJAX. В мануалах встречаю, что в начале нужно(желательно) проверить является ли запрос AJAX, если нет, то return
if (empty($_SERVER['HTTP_X_REQUESTED_WITH']) || $_SERVER['HTTP_X_REQUESTED_WITH'] != 'XMLHttpRequest') {return;}У меня почему-то не получается пройти эту проверку и я попадаю в условие. Вот js:function ajaxGet(method ,url, type, callback) {
const xhr = new XMLHttpRequest();
let f = callback || function(data){};
xhr.open(method, url);
xhr.setRequestHeader('Content-Type', type);
xhr.send();
xhr.addEventListener('load', ()=>{
f(xhr.responseText);
});
}
//Далее эту функцию я вешаю на клик по элементу на странице
.......
ajaxGet('GET','/ajax' + params, 'application/x-www-form-urlencoded' ,(data)=>{
console.log(data);
})
.......php на данный момент выглядит так:if (empty($_SERVER['HTTP_X_REQUESTED_WITH']) || $_SERVER['HTTP_X_REQUESTED_WITH'] != 'XMLHttpRequest') {return;}
echo "Проверка запроса";И echo не срабатывает. Пробовал в echo бросать $_SERVER['HTTP_X_REQUESTED_WITH'], убрав условие, но там пусто. Если убрать условия то то в php я получаю переданные параметры из js, то есть вроде как все работает как нужно(на данный момент, с виду). Но почему не проходит проверку, не понимаю. Подскажите пожалуйста, в чем может быть дело? Комментарии: 3
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Даже не знаю почему, но думалось, что этот заголовок отправляется без нашего участия. Еще раз спасибо