我正在尝试验证用于发票创建和更新的 xero 网络钩子。 这是我的代码:
$body=file_get_contents('php://input');
$yourHash = base64_encode(hash_hmac('sha256',$body,'gDgLpn+xqX7ojhCEq5xx1viAyy6nEa4CMuiQxcXf9ctAoLkscnh/b1Y3002JjIEHOvOEt3MBvx1VLHh6lzaiAA==',true));
if ($yourHash == $_SERVER['HTTP_X_XERO_SIGNATURE'])
{
header("status: 200 Ok");
}else
{
header("status: 401 Unauthorized");
}
这里的错误是"响应包含 cookie"。我如何删除此 cookie 作为响应?
代码示例中没有任何内容正在添加 Cookie。检查您的 http 服务器是否未使用 cookie 进行响应。
我求助于添加
proxy_hide_header "Set-Cookie";
到我的 nginx 配置文件中的强过滤位置部分。
您可能需要
fastcgi_hide_header "Set-Cookie";
我希望这不会在轨道上引起任何问题。接下来,您需要从响应中删除正文。我的响应对象是
Response(status=200)
Response(status=401)
如果您使用的是Apache,我相信您可以通过编辑.htaccess文件来隐藏标题。