首页 > 解决方案 > Ajax 时无法离开页面(异步)

问题描述

我有以下 AJAX 调用,最多需要 20 秒才能完成。我希望用户能够在此呼叫加载且未完成时离开站点。

但是,当用户单击链接或后退按钮时,站点正在等待调用完成,然后用户才会被重定向到上一个站点或用户单击的链接

$.ajax({
  url: 'index.php?route=sale/order/getSupportTickets&token=<?php echo $token; ?>&email=<?php echo $email; ?>',
  dataType: 'json',
  success: function(json) {
    //do stuff here
  }
});

标签: javascriptjqueryajax

解决方案


AJAX 调用与常规 HTTP 调用没有什么不同(它只是发生在幕后)。因此,服务器仍在执行此调用 (getSupportTickets)。

听起来您的 Web 服务器实际上是阻塞的(即您没有任何线程支持或 CPU 100% 忙),这给您一种阻塞调用的错觉


推荐阅读