使用PHP获取XHR请求来源的方法
要使用PHP获取XHR请求来源,可以通过检查`$_SERVER['HTTP_X_REQUESTED_WITH']`变量来实现。如果该变量的值为`XMLHttpRequest`,则表示请求是XHR发起的。以下是一个示例代码: ```php if ($_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest') { echo "请求来源:XHR"; } else { echo "请求来源:非XHR"; } ``` 这段代码首先检查`$_SERVER['HTTP_X_REQUESTED_WITH']`变量的值是否为`XMLHttpRequest`,如果是,则输出“请求来源:XHR”,否则输出“请求来源:非XHR”。
要使用 PHP 获取 XHR 请求的来源,您可以使用:
$_SERVER['HTTP_ORIGIN']
并且,在直接请求的情况下,您可以组合HTTP_REFERER 和REMOTE_ADDR,例如:
if(array_key_exists('HTTP_REFERER',$_SERVER)){$origin=$_SERVER['HTTP_REFERER'];}else{$origin=$_SERVER['REMOTE_ADDR'];}
因此,最终可能的解决方案是:
if(array_key_exists('HTTP_ORIGIN',$_SERVER)){$origin=$_SERVER['HTTP_ORIGIN'];}elseif(array_key_exists('HTTP_REFERER',$_SERVER)){$origin=$_SERVER['HTTP_REFERER'];}else{$origin=$_SERVER['REMOTE_ADDR'];}