检测是否已发送 Ajax 请求


Detect if Ajax request has been sent

我只是无法弄清楚如果发送了ajax请求(表单提交),如何检查PHP。

也不

if (isset($_SERVER['HTTP_X_REQUESTED_WITH']) && $_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest')

也不

if (!empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest')

被执行。

这是javascript代码。

$.ajax({
       type: "POST",
       url: 'login.php',
       data: $(this).serialize()
   });

"这"指的是形式。我已经检查过了,它的格式是正确的用户名=院长&密码=123123

我做错了什么?

添加回调...

  $.ajax({
       type: "POST",
       url: 'login.php',
       data: $(this).serialize(),
       success : function(response){
             console.log(response);
        }
   });

尝试使用浏览器开发人员工具(如果您使用的是 Mozilla Firefox,请使用 FireBug 网络面板),以确保发送适当的标头。您使用的是哪个版本的jQuery?此外,如果您使用 PHP-FPM 作为 Nginx http 服务器的后端,Nginx 可能不会将一些 HTTP 标头发送到后端,具体取决于它的配置。