PHP 中难以捉摸的 $_SERVER['HTTP_X_REQUESTED_WITH']
AJAX 请求在网络上已经变得无处不在,并且可以辨别请求是否是AJAX 与否对于优化代码执行至关重要。在 PHP 中,通常建议检查 $_SERVER['HTTP_X_REQUESTED_WITH'] 是否存在。
然而,这个变量在 PHP 官方文档中神秘地缺失。尝试访问它不会返回任何内容,让人对其可用性产生怀疑。
揭开隐藏变量
实际上,$_SERVER 中的变量是 PHP 本身外部的,是注入的由网络服务器。 X-Requested-With 标头表示 AJAX 请求,通常由主要框架发送。
注意事项
而 $_SERVER['HTTP_X_REQUESTED_WITH'] 可以是一个有用的指标,但它并不普遍可靠。某些框架可能并不总是发送此标头,从而给您带来误报或误报。
Surefire 解决方案
为了绝对确定,区分 AJAX 请求的唯一万无一失的方法是定义一个伴随请求的特定标志(例如 GET 变量)并检查其在接收页面上的存在。
以上是为什么 PHP 文档中缺少 $_SERVER['HTTP_X_REQUESTED_WITH'],以及如何可靠地检测 AJAX 请求?的详细内容。更多信息请关注PHP中文网其他相关文章!