PHP –检查请求标头是否包含/是否为“'X-Requested-With':'fetch'”

时间:2020-05-30 12:08:34

标签: php ajax xmlhttprequest http-headers fetch

我确实对stackoverflow进行了广泛的研究,发现了许多问题和答案,但仍然无法弄清代码片段的出问题。

打算: 基本上,我想检查是否通过fetch API发出了请求。如果不是这样,我只希望PHP输出所请求页面的一小部分。我知道fetch API本身不会发送任何标头。但是,我使用的是提取库,该库成功发送了'X-Requested-With': 'fetch'https://github.com/getdave/fetch-pjax)。我也知道可能存在标头欺骗等。这是一个小型网站,没有任何用户凭据/ cookie或类似内容。

到目前为止的

代码:

  $headers = getallheaders(); 
  if(isset($headers['X-Requested-With']) && strtolower($headers['X-Requested-With']) == 'fetch') { 
    echo 'requested by the fetch API';
  } else {
    echo 'NOT requested by the fetch API';
  }

输出: 尽管根据Chrome开发者工具会发送标头'X-Requested-With': 'fetch',但它总是呼应它不是fetch API调用。如果我回显所有$ header,那么它当然也在回显所有标头。可能是在发出提取请求的同时发出了来自动画插件( lottie.js )的几个XHR请求(不是提取API)吗?

enter image description here

感谢您的任何建议!

0 个答案:

没有答案
相关问题