服务器端的空白自定义请求标头

时间:2012-03-26 13:21:38

标签: php jquery apache2

我正在使用ajax jquery发送请求标头,如下所示

$.ajax({
    url: "http://www.example.com/index.php",
    dataType: "json",
    type: "GET",
    beforeSend: function(xhr) {
        xhr.setRequestHeader("X_REST_USERNAME", "XXXX");
        xhr.setRequestHeader("X_REST_PASSWORD", "XXXX");
        console.log(xhr);
    },
    success: function(data, textStatus, XMLHttpRequest) {

            alert(data);

    },
    error: function(XMLHttpRequest, textStatus, errorThrown) {

    console.log(XMLHttpRequest);
    }

});

我可以在firebug中看到上面的请求标题,但是在php页面上的服务器端,当我尝试访问以下变量时它给了我blank,我累了在php中转储和打印变量但是没有任何进入它

$_SERVER['HTTP_X_REST_USERNAME']
$_SERVER['HTTP_X_REST_PASSWORD']

2 个答案:

答案 0 :(得分:0)

$_REQUEST['X_REST_USERNAME'];
$_REQUEST['X_REST_PASSWORD'];

答案 1 :(得分:0)

如果是apache,请使用apache_request_headers

$headers = apache_request_headers();
echo $headers['X_REST_USERNAME'];
echo $headers['X_REST_PASSWORD'];