带有进度数据的 Ajax 调用(非上传)


Ajax call with progress data (non-upload)

我目前正在处理一个项目,我想发送一个 ajax 请求,该请求将使用 PHP 在本地数据库和远程数据库之间启动数据库同步。

我想知道是否可以将进度数据从 PHP ajax 处理脚本发送回 jQuery ajax 调用以向用户显示同步进度。

以下是我的意思的一个例子:

jQuery.ajax({
    url: ajaxUrl,
    type: post,
    dataType: 'json'
}).done(function(data) {
    // Check for returned progress data
    if (data.complete) {
        // Display "Synchronization complete!" or something similair
    } else {
        // Display progress data such as "Inventory data synchronized..."
    }
});

什至不确定这样的事情是否可能,但我希望我能得到一些帮助。 我确实简要地研究了xhr,但我不确定我是否可以用它实现我的目标。

我知道我可以通过级联 ajax 调用来完成此操作,但我宁愿不需要这样做,因为它的效率会低得多。

您必须打开套接字连接。我猜如果你问这个问题,你不知道什么是套接字连接。但是你可以谷歌一个很好的PHP套接字教程,我相信你会想出一些东西。