使用$ _SERVER [' HTTP_X_REQUESTED_WITH']检测AJAX请求只能在第一次使用?

时间:2014-05-30 19:13:44

标签: php jquery ajax wordpress

所以我有一个条件语句来确定请求是否是AJAX:

if ( !empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest' ) {
// AJAX specific code
} else {
// GET specific code
}

有效。的种类。一旦我发出AJAX请求,服务器就会继续认为下一两分钟的每个请求都是一个AJAX请求。

我正在使用jQuery的$ .ajax方法来访问该页面。

您可以在实际网站上看到错误。如果您访问http://benjaminallison.com/并单击第一个链接(对于Burger Derby),则按预期加载信息。

如果您转到直接链接(http://benjaminallison.com/projects/burger-derby/),它也会按预期工作。但是,如果单击页面上的链接,触发AJAX调用然后尝试直接链接,或者只是尝试再次访问直接链接,您将看到由AJAX特定代码生成的页面!

我不知道这是浏览器/标头问题,jQuery问题还是服务器问题。

奇怪的是我在其他网站上使用过相同的技术并且运行良好;也许它是主持人(MediaTemple)具体。

0 个答案:

没有答案