日期:2014-05-16  浏览次数:20684 次

判断请求是否是ajax请求

大部分js框架(jquery,exit,yui)会在aajax的请求里加上一个名称为“X-Requested-With”的header,可以在服务器端通过这个header来判断,但是似乎不是一个成文的标准,php的判断源码如下(摘自Yii):

    public function getIsAjaxRequest()
    {
        return isset($_SERVER['HTTP_X_REQUESTED_WITH'])?$_SERVER['HTTP_X_REQUESTED_WITH']==='XMLHttpRequest' : false;
    }

?因为一般的跨站攻击都是借用用户的浏览器发送ajax请求,一个请求是否是ajax在CSRF中比较有用。