PHP:使用AJAX请求页面时不存在HTTP_X_REQUESTED_WITH

时间:2013-04-13 19:19:04

标签: php apache xampp

我在许多相关问题中搜索了答案,但没有一个能解决我的问题,所以我有这个代码:

if (isset($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') {

}else{
    echo("This page can't be accessed.");
}

我尝试将HTTP_X_REQUESTED_WITH重命名为HTTP_X_REQUEST_WITH,因为我看到其他问题答案,有时请求是以HTTP_X_REQUEST_WITH而非HTTP_X_REQUESTED_WITH发送的。

但没有一个有效,这很奇怪,因为它几天前工作了......

2 个答案:

答案 0 :(得分:1)

AJAX请求不会自动获取HTTP_X_REQUESTED_WITH标头。

jQuery和大多数其他库发送它,但如果您已经推出了自己的AJAX,则需要滚动自己的HTTP_X_REQUESTED_WITH标头。

答案 1 :(得分:0)

主要现代浏览器的HTTP_X_REQUESTED_WITH已更改为X_REQUESTED_WITH。 请注意,某些浏览器仍可能使用HTTP_X_REQUESTED_WITH