Php 设置获取/发布请求的标题

Php 设置获取/发布请求的标题,php,jquery,ajax,http-headers,Php,Jquery,Ajax,Http Headers,我们希望在GET/POST请求期间发送身份验证令牌和签名。我们不希望通过正文或参数发送安全信息。所以我们决定在请求中发送头 当我们在谷歌上搜索时,我们知道我们可以使用ajax post请求来实现这一点。但我们想转到下一页的标题 我们如何实施这一点 编辑: 我们计划将这些信息存储在cookies上。但在iPhone中,如果cookies被禁用,将会改变我们网站的行为。因此,为了克服这个问题,我们计划通过头进行发送。您可以在ajax请求中设置X-AUTHENTICATION-TOKEN,如下所示,我

我们希望在GET/POST请求期间发送身份验证令牌和签名。我们不希望通过正文或参数发送安全信息。所以我们决定在请求中发送头

当我们在谷歌上搜索时,我们知道我们可以使用ajax post请求来实现这一点。但我们想转到下一页的标题

我们如何实施这一点

编辑:


我们计划将这些信息存储在cookies上。但在iPhone中,如果cookies被禁用,将会改变我们网站的行为。因此,为了克服这个问题,我们计划通过头进行发送。

您可以在ajax请求中设置
X-AUTHENTICATION-TOKEN
,如下所示,我正在使用它通过ajax请求进行实时REST API调用

$.ajax({
    type: "GET",
    beforeSend: function (xhr) {
        xhr.setRequestHeader('X-AUTHENTICATION-TOKEN', 'token string');
    },
服务器端必须将标头设置为

header('Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept, X_AUTHENTICATION_TOKEN');
要在服务器端检索数据,您可能需要

if (isset($_SERVER['HTTP_X_AUTHENTICATION_TOKEN'])) {
    $request_header = $_SERVER['HTTP_X_AUTHENTICATION_TOKEN'];
} else {
    if (function_exists('getallheaders')) {
        foreach (getallheaders() as $header_name => $header_value) {
            if ($header_name == 'X_AUTHENTICATION_TOKEN') {
                $request_header = $header_value;
            }
        }
    }
}

因此这里的
$request\u header
将是令牌,您可以在服务器端脚本中使用它进行验证。

但是通过Ajax调用,我无法移动到下一个新的html页面。我想移动到下一个带有标题的页面。我不知道您是否希望使用带有标记的ajax发送请求?移动新的html页面是什么意思?在EMBER.JS中,我们执行这种操作,其中令牌存储在cookie上,当我们通过html页面在不同的服务器请求之间移动时,令牌随不同的服务器请求一起发送,浏览器关闭后cookie将被删除。假设您有两个html页面“提交表单”和“显示详细信息”。如果您单击html页面的提交按钮,“提交表单”数据应保存在服务器上,新的html页面“显示详细信息”将显示。是的,这正是我们要做的,我们在cookie上的登录存储上获取令牌,并为每个服务器请求发送如上所述的令牌值。嗯,如果禁用cookie,这将很难处理,因为所有现代网络应用都需要启用cookie。您可以检查oauth框架